VB 修改 TXT中指定的某一行?

比如有一个txt中有如下内容:
AdapterTroubleshooter.exe>|1/294|38912|09:14 2009/July/14|||||
ARP.EXE>|2/294|20992|09:14 2009/July/14|||||
at.exe>|3/294|24064|09:14 2009/July/14|||||
AtBroker.exe>|4/294|29184|09:14 2009/July/14|||||
attrib.exe>|5/294|16384|09:14 2009/July/14|||||
auditpol.exe>|6/294|50176|09:14 2009/July/14|||||
AUTMGR32.EXE>|7/294|153088|00:00 1998/April/24|||||
autochk.exe>|8/294|668160|04:16 2010/November/20|||||
autoconv.exe>|9/294|679424|04:16 2010/November/20|||||
autofmt.exe>|10/294|658944|04:16 2010/November/20|||||
bitsadmin.exe>|11/294|186368|04:16 2010/November/20|||||
bootcfg.exe>|12/294|81408|09:14 2009/July/14|||||

我想修改
ARP.EXE>|2/294|20992|09:14 2009/July/14|||||
这行的内容,我应该如何修改?

ARP.EXE>|2/294|20992|09:14 2009/July/14|||||
不一定是第二行,是会变化的。
我已经能够根据关键字找到
ARP.EXE>|2/294|20992|09:14 2009/July/14|||||这行,请问如何修改??

XP+vb6测试通过
Private Sub Form_Load()
Dim m As String, a As String, t() As String
Open "c:\123.txt" For Input As #1
Do While Not EOF(1)
Line Input #1, a
m = m & a & vbCrLf
Loop
Close #1
t = Split(m, vbCrLf)
For n = 0 To UBound(t)
If UCase(Left(t(n), 7)) = "ARP.EXE" Then
'在这里写你的处理过程
'下面是一个示例
t(n) = Replace(t(n), "ARP.EXE", "123.123")
End If
Next
m = Join(t, vbCrLf)
Open "c:\123.txt" For Output As #1
Print #1, m
Close #1

End Sub
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-03-06
假设你的文件名为“C:\a1.txt”
dim txt as string
Open "C:\a1.txt" for input as #1
Open "C:\a2.txt" for output as #2
do while not eof(1)
line input #1, txt
if txt="f=-50000" then txt="f="&Text1.Text
print #2,txt
loop
close
运行结束后,a2.txt中就是修改后的文件。
第2个回答  2012-03-06
你可以先把全部内容读取过来,存入数组,可以是一行存为一个元素,然后判断哪一个符合条件,把想要替换的覆盖就行

VB 修改 TXT中指定的某一行?
'下面是一个示例 t(n) = Replace(t(n), "ARP.EXE", "123.123")End If Next m = Join(t, vbCrLf)Open "c:\\123.txt" For Output As #1 Print #1, m Close #1 End Sub

如何用vb更改txt文件中某一行的内容
TextBox1.Text = Replace(TextBox1.Text , strnow , strnow & " " & "你的内容")改了一下,原理就是用replace重写

VB 如何读取和写入指定行 (TXT)
1、vb对文本文件无法直接读取和写入指定行。2、vb只能用line input #一行行读到要读的行。3、要写入指定行,需要读入所有文本,然后修改指定行,然后重新保存所有文件内容。 本回答由电脑网络分类达人 汪雷 推荐 举报| 答案纠错 | 评论 0 1 chinaboyzyq 采纳率:71% 来自团队:VB6专家 擅长: VB 数学 其他编程语...

vb如何修改txt文档的某一行的具体内容
dim txt as string Open "C:\\a1.txt" for input as #1 Open "C:\\a2.txt" for output as #2 do while not eof(1)line input #1, txt if txt="f=-50000" then txt="f=" & Text1.Text print #2,txt loop close 运行结束后,a2.txt中就是修改后的文件。

在VB中,在txt文件指定位置修改怎么做啊
如果这个文件的指定位置是一个特殊标记,那你完全可以把这个文件打开到richtextbox里面,通过replce功能,将这个特殊标记(例如:@33###44##22##4之类的几乎不可能与其他字符起冲突的关键字中),替换成你要的内容,即可完成修改,然后将richtextbox再保存为该文件名即可.

如何用VB编写替换.txt文件里的指定字符啊?
dim k as string,s as string ffff = combo1.text open "路径.txt" for input as #1 '读出 do while not eof(1)line input #1 ,k s = s & k & vbcrlf loop close #1 s = replace(s,"dddd",ffff)open "路径.txt" for output as #1 '写入 print #1 , s close #1 ...

VB 替换TXT的某一行
用临时文件做,其中需要替换的txt为"C:\\1.txt"这个你可以自己改!Private Sub Command1_Click()' 单击command1 Dim FileRead As Integer '定义 Dim FileWrite As Integer Dim Str As String FileRead = FreeFile ‘调用FreeFile函数·获取可用文件号 Open "C:\\1.txt" For Input As FileRead ...

VB 如何修改TXT文本文档某一行
vb无法修改文本文件的某一行,只能全部读取、修改、再全部 存回原文件。

VB 如何修改TXT内容?
1、最后一行写入数据:Open "c:\\123.txt" For Append As #1Print #1, "要写入的数据"Close #12、修改某一行数据:Dim s() As StringOpen "c:\\123.txt" For Binary As #1s = Split(Input(LOF(1), #1), vbCrLf)s(4) = "修改后的数据" '修改第5行的数据(s(0)是第1行)Put #1, , Join(s,...

VB怎么改写TXT中某段字符
VB 中根本没有替换某行的代码,只有把整个文本全部读出来,替换某行,然后再把文件以覆盖方式全部写回去。Public Function ReplaceLine(fName As String, LineNumber As Long, LineText As String) As Boolean '功能: 从指定的文本文件替换指定的行的数据 '参数: fName = 完整的文本文件路径名+文件名 ' LineNumb...

相似回答