我有一个包含4个字段的文件。
A,B,C,D
我想只提取第4个字段并将其更改为“E”
无论如何要做到这一点?
答案 0 :(得分:4)
假设值不包含逗号,请使用FileSystemObject(FSO)读取文件,然后用逗号分隔Split每行。根据需要更改4个值的结果数组,然后将join再次作为逗号分隔的字符串组合在一起。完成所有更改后,使用FSO将数据写回文件。
类似于:
Set outputFile = fso.OpenTextFile(FileName1, ForWriting, True)
Set inputFile = fso.OpenTextFile(FileName2, ForReading)
Do While inputFile.AtEndOfStream <> True
arr = Split(inputFile.ReadLine, ",")
arr(3) = "E"
outputString = Join(arr, ",")
outputFile.WriteLine outputString
Loop
请注意,代码完全未经测试,主要是从内存中编写的,因此几乎肯定不正确,只是为了给你一个想法。
答案 1 :(得分:-1)
也许一个简单的替换会起作用。
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile("c:\data.txt")
strSearchString = objFile.ReadAll
objFile.Close
strSearchString = Replace(strSearchString,"A,B,C,D","A,B,C,E")
Set objFile = objFSO.OpenTextFile("c:\data.txt",2)
objFile.Write strSearchString
objFile.Close