FSO修改文本文件的问题.

来源:百度知道 编辑:UC知道 时间:2024/05/09 03:21:33
我想修改文本文件中特定的行,有没有比这个更优秀的算法吗?
Set fso = CreateObject("Scripting.FileSystemObject")

Set a = fso.OpenTextFile(strPath, 1, False, TristateFalse)

Set b = fso.createTextFile(App.Path + "\sms\submit.temp")

Dim i As Integer

Dim strtext As String

i = 0

Do While a.AtEndOfStream <> True

If i = 52 Then

strtext = "SMSID=""" + Text1.Text + """'用户标号"

a.ReadLine

b.writeline strtext

Else

b.write a.ReadLine

b.write vbCrLf

End If

i = i + 1

Loop

a.Close

b.Close

fso.copyfile App.Path + "\sms\submit.temp", strPath, True

fso.deletefile App.Path + "\sms\submit.temp"
谢谢你回答,我修改的网页文件没有标记的

用api 有函数可以自动识别某部分。然后可以控制光标自动移动几行几列
不过行标记必须是向ini文件里那样用[]号标的

比如
[boot]
…………
[f]
…………

这个函数不太适合普通的文档。

我认为楼主的方法已经很不错了。

或者,可以读出来放在内存里,然后再重新写入原文件。