Vbs读取txt文本,高手进

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vbs读取txt文本,高手进相关的知识,希望对你有一定的参考价值。

Vbs判断同文件夹下1txt内容,文本内容每行为1个当前文件夹的文件名,执行vbs后,如果文本内没有的文件名,或文件夹名,则删除,请高手指点,并祥细给出代码,高分相送
escortmnm
1楼 谢谢您的回答
我试验一下,1.TXT 不太好用,能再改动一下嘛???
如果我的1.TXT里面有如下内容
55.JPG
88.BAT
99DSF.RAR
执行后不删除这包含的这3个文件,其他的删除
可是现在都删了

vbs代码如下:
on error resume next
set fso=CreateObject("scripting.filesystemobject")
set fds=fso.getfolder(".").subfolders
for each fd in fds
if fileexs(fd.name)=0 then fso.DeleteFolder fd.path
next
set fs=fso.getfolder(".").files
for each f in fs
if fileexs(f.name)=0 then fso.deletefile f.path
next

function fileexs(byval filename)
set fr=fso.opentextfile("1.txt",1)
k=0
do
if lcase(fr.readline)=lcase(filename) then k=1:exit do
loop until fr.atendofstream
if filename=fso.getfile(wscript.scriptfullname).name or lcase(filename)="1.txt" then k=1
fr.close
fileexs=k
end function

不好意思刚才疏忽了一点,你的1.txt未包含1.txt所以将1.txt删除了,我测试的时候是加上的,所以出错,现在修改好了。
参考技术A 删除文件夹的:

dim fso,fr,rw
set fso = createobject("scripting.filesystemobject")
set fr = fso.opentextfile("1.txt",1)
FileArray = Split(fr.readall, vbcrlf, -1, 1)

set folderlist = fso.getfolder(".\").subfolders
for each folder in folderlist
foldername = Split(folder, "\", -1, 1)
for i = 0 to Ubound(FileArray)
if foldername(Ubound(foldername)) <> FileArray(i) then
fso.DeleteFolder folder
end if
next
next

以上是关于Vbs读取txt文本,高手进的主要内容,如果未能解决你的问题,请参考以下文章

如何用VBS逐行读取文本文件的内容,并输入变量

高手进:asp怎么把文本过滤汉字,字母后只留下数字

vbs读取指定的文本内容

我有一段VBS的简单按键代码,但是运行后会死循环,求高手修改帮我实现两个效果。

如何用组态王软件把文本文件存入SQL server数据库?请高手指教!

用Autoit编程软件,如何读取屏幕上的信息?Autoit高手进!