如何用VB批量修改TXT文件每行的数字(数字都在每行的最后)?
TXT文件有很多行(大概25左右),每行的结构都一样,如图所示。我想用VB改变每行最后的数字,该怎么做?请给出可以用的代码,最好给出不同的方法,我VB不太好,只会看代码,...
TXT文件有很多行(大概25左右),每行的结构都一样,如图所示。我想用VB改变每行最后的数字,该怎么做?请给出可以用的代码,最好给出不同的方法,我VB不太好,只会看代码,不怎么会写。谢谢!
展开
1个回答
展开全部
Dim MyStr As String
Dim LStr As String
Dim L As Integer
'一边读取原文件信息,一边处理信息
'读取一行,去掉等号右边原数字,加入新数字
MyStr = ""
Open App.Path & "\result.txt" For Input As #1 '以读的方式打开文件
Do While Not EOF(1) ' 循环至文件尾
Line Input #1, LStr '读入一行文本
L = InStr(LStr, "=") '定位到等号的位置
'从字符串里取出左边的L位字符,即:去掉了原来等号右边的数据
LStr = Left(LStr, L)
LStr = LStr & "9999" '写入新数字 9999 '假设都修改成9999
MyStr = MyStr & LStr & vbCrLf '连接到字符串MyStr里
Loop
Close #1 ' 关闭文件。
Open App.Path & "\result.txt" For Output As #1 '以写的方式打开文件
Print #1, MyStr
Close #1
Dim LStr As String
Dim L As Integer
'一边读取原文件信息,一边处理信息
'读取一行,去掉等号右边原数字,加入新数字
MyStr = ""
Open App.Path & "\result.txt" For Input As #1 '以读的方式打开文件
Do While Not EOF(1) ' 循环至文件尾
Line Input #1, LStr '读入一行文本
L = InStr(LStr, "=") '定位到等号的位置
'从字符串里取出左边的L位字符,即:去掉了原来等号右边的数据
LStr = Left(LStr, L)
LStr = LStr & "9999" '写入新数字 9999 '假设都修改成9999
MyStr = MyStr & LStr & vbCrLf '连接到字符串MyStr里
Loop
Close #1 ' 关闭文件。
Open App.Path & "\result.txt" For Output As #1 '以写的方式打开文件
Print #1, MyStr
Close #1
更多追问追答
追问
非常感谢你回答,运行后没有反应啊。还有,以上答案是假设都修改成9999,而实际是每行修改的数字不一样,该怎么办?还请不吝赐教
追答
1,没反应?你先把原来的文件保存到工程文件夹里,然后单击按钮,然后打开文件看修改了没有?
2,数字不一样,那么这个问题要看你数字在哪里呢?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |