怎样用vb删除txt文本文件中不是数字的其他字符

但数字全部保留vb程序目录中有一个文本文件123.txt。vb窗体关闭后,自动清除这个文件中的非数字字符。但保留所有数字。代码怎样写呢?... 但数字全部保留
vb程序目录中有一个文本文件123.txt。vb窗体关闭后,自动清除这个文件中的非数字字符。但保留所有数字。代码怎样写呢?
展开
 我来答
wsygdhr119
2012-02-12 · TA获得超过2109个赞
知道大有可为答主
回答量:2432
采纳率:0%
帮助的人:2144万
展开全部
Private Sub Form_Unload(Cancel As Integer)
Dim a As String, s As String
Open "c:\1234.txt" For Input As #1
Do While Not EOF(1)
Line Input #1, a
For i = 1 To Len(a)
If IsNumeric(Mid(a, i, 1)) Then s = s + Mid(a, i, 1)
Next i
s = s & vbCrLf
Loop
Close
Open "c:\1234.txt" For Output As #1
Print #1, s
Close
MsgBox "完成"
End Sub
c:\123.txt为文件路径,改为你的文件路径即可
我已验证,运行正确
更多追问追答
追问
要保留小数点、负号(它们是数字的组成部分)以及空格。麻烦请再修改下。
追答
Private Sub Form_Unload(Cancel As Integer)
Dim a As String, s As String, b As Integer
Open "c:\1234.txt" For Input As #1
Do While Not EOF(1)
Line Input #1, a
For i = 1 To Len(a)
b = Asc(Mid(a, i, 1))
If b = 32 Or b = 45 Or b = 46 Or b > 47 And b < 58 Then s = s + Mid(a, i, 1)
Next i
s = s & vbCrLf
Loop
Close
Open "c:\1234.txt" For Output As #1
Print #1, s
Close
MsgBox "完成"
End Sub
wgf1975
2012-02-12 · TA获得超过799个赞
知道小有建树答主
回答量:981
采纳率:50%
帮助的人:207万
展开全部
可以用二进制打开,然后把数据赋给一个一维数组(定义大小和文件一样),每得到一个字符就检查是否是数字,不是就置“空”,最后再写回去或者新建一个文件,遇空就跳过。
追问
具体些
追答
楼上的方法可行
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wu_kang_lin
2012-02-12 · TA获得超过170个赞
知道小有建树答主
回答量:490
采纳率:50%
帮助的人:315万
展开全部
这个要求只能采用全部读出后,用字符串替换函数替换字符为空格.或指定的字符后,再次写入文本中.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友fdc3752
2012-02-12 · TA获得超过104个赞
知道小有建树答主
回答量:414
采纳率:0%
帮助的人:174万
展开全部
同意
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式