求助!!批处理或vbs 替换文本中的指定字符,可用clip命令
测试.txt文本内容如下:-----------------------------------------bbbbb替换处1qaaa6464564564645654rr...
测试.txt 文本内容如下:
-----------------------------------------
bbbbb替换处1qaaa
6464564564645654
rrrrr替换处2tttteeeee
替换处3aaaaaa
-----------------------------------------
每个替换的字符都按照相应的txt内容
替换处1 = 1.txt(里面的内容)
替换处2 = 2.txt(里面的内容)
替换处3 = 3.txt(里面的内容)
我知道应该要用clip的命令是可以提取出txt内容的,就是不知道批处理该怎么写,求助! 展开
-----------------------------------------
bbbbb替换处1qaaa
6464564564645654
rrrrr替换处2tttteeeee
替换处3aaaaaa
-----------------------------------------
每个替换的字符都按照相应的txt内容
替换处1 = 1.txt(里面的内容)
替换处2 = 2.txt(里面的内容)
替换处3 = 3.txt(里面的内容)
我知道应该要用clip的命令是可以提取出txt内容的,就是不知道批处理该怎么写,求助! 展开
3个回答
展开全部
path1 = "C:\Users\AA\Desktop\1.txt" ' \
path2 = "C:\Users\AA\Desktop\2.txt" ' --3个文件的具体路径,自己根据情况更改
path3 = "C:\Users\AA\Desktop\3.txt" ' /
ReplaceStr Path1,"查找内容","被替换内容"
ReplaceStr Path2,"查找内容","被替换内容"
ReplaceStr Path3,"查找内容","被替换内容"
Function ReplaceStr(FilePath,FindStr,wReplaceStr)
set fso = CreateObject("scripting.filesystemobject")
set red = fso.opentextfile(FilePath,1)
str = replace(red.readall,FindStr,wReplaceStr)
red.close
set wit = fso.opentextfile(FilePath,2)
wit.writeline str
wit.close
end function
以上代码,本机测试通过,如有问题就追问哈!
path2 = "C:\Users\AA\Desktop\2.txt" ' --3个文件的具体路径,自己根据情况更改
path3 = "C:\Users\AA\Desktop\3.txt" ' /
ReplaceStr Path1,"查找内容","被替换内容"
ReplaceStr Path2,"查找内容","被替换内容"
ReplaceStr Path3,"查找内容","被替换内容"
Function ReplaceStr(FilePath,FindStr,wReplaceStr)
set fso = CreateObject("scripting.filesystemobject")
set red = fso.opentextfile(FilePath,1)
str = replace(red.readall,FindStr,wReplaceStr)
red.close
set wit = fso.opentextfile(FilePath,2)
wit.writeline str
wit.close
end function
以上代码,本机测试通过,如有问题就追问哈!
更多追问追答
追问
晕,看来是我的叙述有点乱,导致你恰恰给写反掉了,是只有一个要替换的txt,但是这个txt里面有3处地方要改。 但是这改的3处地方,分别提取自不同的txt里面,而不是直接在你编写的vbs代理里,是不是有点难度 。。。。
追答
没的难度,太简单了。只是改一下而已!
path0 = "C:\Users\AA\Desktop\0.txt" '目标文件
path1 = "C:\Users\AA\Desktop\1.txt" '第一个被替换内容的txt路径
path2 = "C:\Users\AA\Desktop\2.txt" '第二个被替换内容的txt路径
path3 = "C:\Users\AA\Desktop\3.txt" '第三个被替换内容的txt路径
ReplaceStr Path0,"afjkdlsjfasf",path1 '中间引号内为查找内容
ReplaceStr Path0,"fsafewiourfsadf",path2
ReplaceStr Path0,"sdfdsxicuvdsfa",path3
Function ReplaceStr(FilePath,FindStr,ReplaceStrFile)
set fso = CreateObject("scripting.filesystemobject")
set sou = fso.opentextfile(FilePath,1)
set red = fso.opentextfile(ReplaceStrFile,1)
str = replace(sou.readall,FindStr,red.readline)
sou.close
red.close
set wit = fso.opentextfile(FilePath,2)
wit.writeline str
wit.close
end function
看我理解正确没有,你的意思应该是这样了吧!反正有问题追问嘛!
展开全部
太乱了,重新把所有txt都列一下。
读取txt:
call :str
:str
for /f "tokens=* skip=×" %%i in (×.txt) do set str=%%i&exit /b
::skip=×的×是要读取的行数-1
运行后把str变量设为读取结果
读取txt:
call :str
:str
for /f "tokens=* skip=×" %%i in (×.txt) do set str=%%i&exit /b
::skip=×的×是要读取的行数-1
运行后把str变量设为读取结果
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
先读取出来,然后判断字符,替换,写入。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询