文本文件的更新
麻烦问一下大家,有没有比较有效的方法更新文本文件中的字符串呢?
比如;对于一个有几万字符的文本文件来说,我想在其中找到一个特定的串"ABCD",然后我想把这个串更新为"DCBA",其它的都不变,文本文件的格式也不变.
有办法请赐教!!
[解决办法]
我的方案:
一,读入部分到内存(字符串型中)
二,用Replace进行替换;
三,如果到了文件尾,结束;否则继续 <一> ;
如果文件不大(50M以内),那估计直接完全读到内存里也是可以了的
就是不清楚Replace替换时,到底有多少的效率.....
还有一种方案,就是对付超大文件的(上G的)
就是使用内存映射文件,利用指针来访问文件,其它就同上了
[解决办法]
几万字符的文本文件,不算大!
引用Microsoft Scripting runtime
Dim fso As New FileSystemObject
Dim ts As TextStream
Set ts = fso.OpenTextFile( "文件路径 ", ForReading)
Dim strCon As String
strCon = ts.ReadAll
strCon = Replace(strCon, "ABCD ", "CADB ")
ts.Close
Set ts = fso.OpenTextFile( "文件路径 ", ForWriting)
ts.Write (strCon)
ts.Close