简单记录

DataTable相关

DataTable.Select()

使用sql语法筛选数据

dt.Select("[semployerName] like '*[*]*' or [semployerName] like '*''*' ")
Datatable Filtered_Results = dt.Select("[Column1]=’"+param_1+"’ AND [Column2]=’"+param_2+"’").CopyToDataTable()

https://www.cnblogs.com/TeresaMu/p/12058559.html

https://docs.microsoft.com/zh-cn/dotnet/api/system.data.datatable.select?view=net-5.0

DataTable.AsEnumerable()

筛选数据

dt.AsEnumerable().Where(Function(y) y.Item("semployerName").ToString.Contains("'") or y.Item("semployerName").ToString.Contains("*")).ToList()

https://forum.uipath.com/t/checking-special-characters-in-column-values-in-data-table/14599/2

DataTable.Clone()

克隆可创建具有与原始 DataTable 相同的结构的新 DataTable,但不复制任何数据(新 DataTable 将不会包含任何 DataRows)。

https://docs.microsoft.com/zh-cn/dotnet/api/system.data.datatable.clone?view=net-5.0

DataTable.Copy()

同时将结构和数据复制到新 DataTable 中,使用 Copy

给 DataTable 添加列(指定位置)

SetOrdinal(0)里面的 0 就是想添加到的位置。

dt.Columns.Add("列名").SetOrdinal(0)
dt.Columns.Add("列名", typeof(String)).SetOrdinal(0)

https://docs.microsoft.com/en-us/dotnet/framework/data/adonet/dataset-datatable-dataview/adding-columns-to-a-datatable

String相关

转成两位精度小数

Double.Parse("1.2").ToString("0.00")
Double.Parse("1").ToString("f")

转成百分比

Double.Parse("0.5").ToString("p")

https://docs.microsoft.com/zh-cn/dotnet/api/system.double.tostring?view=net-5.0

文件相关

获取文件大小(字节数)

code

fileSize = FileLen(filePath).ToString

文件重命名

code

FileSystem.Rename(oldPathName,newPathName)

文件压缩

startPath, 到压缩的目录路径;zipPath, 要生成压缩包的所在路径。zipPath 貌似不能在 startPath 里面。

code

System.IO.Compression.ZipFile.CreateFromDirectory(startPath, zipPath)

https://docs.microsoft.com/zh-cn/dotnet/api/system.io.compression.zipfile.createfromdirectory?view=net-5.0

环境相关

获取当前文件夹路径

Environment.CurrentDirectory

字符串组合成路径

Path.Combine(Environment.CurrentDirectory,"Data")

https://docs.microsoft.com/zh-cn/dotnet/api/system.io.path.combine?view=net-5.0

Excel相关

删除Sheet页

delSheet.txt:

Sub Deletesheet(sheetName)
Sheets(sheetName).Delete
End Sub

想删除的是 Sheet2

如果报错 Invoke VBA: 不信任到 Visual Basic Project 的程序连接,那么去 Excel 的 文件-> 选项,找到信用中心,点击信用中心设置。

接着找到宏设置, 在开发人员宏设置里面勾选「启用所有宏 」、「信任对VBA工程对象模型的访问」

奇奇怪怪的坑

ctrl v 失效

ctrl c + ctrl v,无法把复制的内容粘贴到 Excel 文件里面,只输入了一个 v.

原因:未知

解决办法:Send Hotkey 控件勾选 SendWindowMessage.


Selector 能找到元素,但是运行报错 time out

开发时,使用控件的Selector 是能够定位到元素的,但是实际运行的时候,却报错,显示 time out。

原因:网站的问题,网页其实还在加载中,一直都在加载,会加载很久,但是不影响正常使用。

解决办法:WaitForReady 属性选择 None


客户机的系统和服务器日期不为同一天

使用到人民币银行结算账户管理系统,登录的时候提示【客户机的系统和服务器日期不为同一天】。

原因:未知

解决办法:用IE浏览器,把网站添加到兼容性视图。