VB如何删除文本文件中指定的内容?

VB6.0
我的文本文件中的内容:
1310000001
1310000002
1310000003
1310000004
1310000005
1310000006
1310000007
当我在文本框中输入以下要删除的号码
1310000001
1310000004
1310000007
我想得到结果是:
1310000002
1310000003
1310000005
1310000006
想了好久也做不出来!求高手赐代码

第1个回答  2010-09-24
新建1个按钮2个编辑框 编辑框改名为txt1,txt2

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
txt2.Text = Replace(txt1.Text, "1310000001" & vbCrLf, "") '1-欲被替换的文本 2-需要替换的文本 3-用作替换的文本
End Sub

上面帮你实现了其中一个文本的替换 详细的可以自己继续写

给你2种思路
第一个就是上面的,寻找要删除的文本然后替换成空字符""
第二个可以先寻找如果不是要寻找的文本则直接写入,当寻找到要删除的文本时则不写入!本回答被提问者采纳
第2个回答  2010-09-24
打开这个文件一行行的读,同时打开另一个文件开始写,如果是要的号码就写到新文件中,不要的就直接跳过不写。最后把旧文件删了,再把新文件重命名成旧文件。
第3个回答  2010-09-24
Sub DelStr(ByVal TxtPath As String, ByVal DelStr As String)
Dim TxtStr As String, Dels() As String, Index%
ReDim Dels(0)
If Dir(TxtPath) = "" Then Msgbox "文件不存在": Exit Sub
Open TxtPath For Binary As #1
TxtStr = StrConv(InputB(LOF(1), #1), vbUnicode)
Close #1
If InStr(DelStr, vbNewLine) > 0 Then Dels() = Split(DelStr, vbNewLine)
For Index = 0 To UBound(Dels)
If Dels(Index) <> "" Then TxtStr = Replace(TxtStr, Dels(Index) & vbNewLine, "")
Next Index
Open TxtPath For Output As #1
Print #1, TxtStr
Close #1
End Sub

直接调用。用法:DelStr(你的Txt文件路径,你要删除的内容)。如:
DelStr("C:\123.txt",Text1.Text)
调用后你的TXT文件就已被更改。
第4个回答  2010-09-26
可以用字符串替换的办法解决,了解RePlace函数吗?用RePlace可以自动把所有要删除的字符串替换为""空串,每次可以删除1种号码,查下MSDN吧。
第5个回答  2010-09-24
很简单,直接用replace(text1.text,"find内容","")就OK了

参考资料:http://www.lovevb.com

相似回答