我尝试在VBS中编写一个脚本,该脚本会打开CSV文件,对数据进行一些更改并将其保存。我的问题是我的数据格式如下:
data1,data2, data3,data4,data5,data6,
保存操作后(即使我没有更改文件内容),VBS也会在行尾添加额外的逗号字符,文件外观如下:
data1,data2,,, data3,data4,data5,data6,
这完成了丢失的(对他来说)逗号。不幸的是,我有一个程序无法正确读取此类CSV。
有什么办法可以防止VBS添加这些额外的逗号? 如果不知道,您是否知道如何从行尾删除其他逗号?
答案 0 :(得分:1)
输出数据的格式是完全有效的CSV(Excel导出的格式)。如果目标程序无法处理,则可能需要对导出的数据进行后处理,然后再将其输入到程序中,例如用正则表达式替换:
filename = "C:\path\to\your.csv"
Set fso = CreateObject("Scripting.FileSystemObject")
Set re = New RegExp
re.Pattern = ",+$"
re.Global = True
re.Multiline = True
txt = fso.OpenTextFile(filename).ReadAll
fso.OpenTextFile(filename, 2).Write re.Replace(txt, ",")