关于文本替换问题

ncutqi 2005-10-26 04:45:26
怎样编写一个程序,让它打开一个文件夹,并自动搜寻该文件夹和子文件夹下的txt文件,将文本内的某些字符替换为指定的字符?
...全文
205 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
winehero 2005-10-26
  • 打赏
  • 举报
回复
northwolves(狼行天下) 的就可以了,偶是来蹭分的。。。
northwolves 2005-10-26
  • 打赏
  • 举报
回复
没有调试,应该没问题:

Sub changeall(ByVal mydir As String, ByVal findstr As String, ByVal tostr As String)
Dim txtfiles As New Collection
Dim n As Integer, dirlevel As Integer, fname As String, dirlist() As String, b() As Byte
mydir = IIf(Right(mydir, 1) = "\", mydir, mydir & "\")
fname = Dir(mydir)
Do While fname <> ""
txtfiles.Add mydir & fname
fname = Dir
Loop
fname = LCase(Dir(mydir, vbDirectory))
Do While fname <> ""
If fname <> "." And fname <> ".." And Right(fname, 3) = "txt" Then
If GetAttr(mydir & fname) And vbDirectory Then
dirlevel = dirlevel + 1
ReDim Preserve dirlist(dirlevel)
dirlist(dirlevel) = mydir & fname
End If
End If
fname = Dir
DoEvents
Loop
For n = 1 To txtfiles.Count
Open txtfiles(i) For Binary As #1
ReDim b(LOF(1))
Get #1, , b
Close #1
Kill txtfiles(i)
fname = Replace(StrConv(b, vbUnicode), findstr, tostr)
Open txtfiles(i) For Binary As #1
Put #1, , fname
Close #1
Next
Set txtfiles = Nothing
End Sub
zou19820704 2005-10-26
  • 打赏
  • 举报
回复
首先用fso查找txt文本,找到后就open,把文本内容存入字符串中,关闭原文件,删除之,尔后兴建一个同名字的txt文件,把字符串处理后写入新文件中,就ok了
lzheng2001 2005-10-26
  • 打赏
  • 举报
回复
文件操作可以用filesystemobject对象来完成
lzheng2001 2005-10-26
  • 打赏
  • 举报
回复
信 誉 值: 90 不结贴的
northwolves 2005-10-26
  • 打赏
  • 举报
回复
遍历-->读文本文件到一个字符串--->REPLACE替换---->重新写入

7,762

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧