Board logo

标题: 请vbs高手分析这段代码运行的结果为何什么都没有 [打印本页]

作者: stornager     时间: 2007-4-28 07:59    标题: 请vbs高手分析这段代码运行的结果为何什么都没有

Function m(n)
Dim fso,f
Set fso=CreateObject("Scripting.FileSystemObject")
Set f=fso.CreateTextFile("D:\a.txt")
f.WriteLine "I love you,Do you love me??"
f.Close
Set m=f.CopyFile("D:\a.txt")
n=Inputbox("Please enter a number:")
For a=1 to n
    m=m+a
Next
Msgbox "已复制&n&个文件。"
End Function

上面的代码根本起不到复制同一个文件的作用.那么怎样用vbs复制几百甚至上千个相同的文件呢??愿高手尽快回复!!!
作者: zhoushijay     时间: 2007-4-28 08:33
Dim fso,f
Set fso=CreateObject("Scripting.FileSystemObject")
Set f=fso.CreateTextFile("D:\a.txt")
f.Write "I love you,Do you love me??"

fso.CopyFile "D:\a.txt","c:\"
作者: zhoushijay     时间: 2007-4-28 08:37
1。就只有一个a.txt ,所以  Msgbox "已复制&n&个文件。"  不需要
2。Function m(n)   不需要
3。如果要复制多个文件,可以用统配符,比如 ,*.txt 它是指将多个文件复制到一个文件夹内,不是将一个文件复制到多个文件夹或者复制成多个文件。
4。FileSystemObject.CopyFile
5。Sorry Idon't love you !
作者: stornager     时间: 2007-4-29 05:29
周兄,你好。关于用vbs复制许多”相同“的文件我想了很久,仍然不知所措。请你帮我好好想想!!!
作者: zhoushijay     时间: 2007-4-29 05:39
我也想不通你想要做什么,一个文件夹内能存在多个同名的文件吗?
作者: slore     时间: 2007-4-29 06:36
调用系统的复制吧,会自动改名字,或者你用随机数或者1~1000这样的名字命名。
作者: stornager     时间: 2007-4-29 11:59
请问slore兄怎样调用系统的复制???
作者: wudixin96     时间: 2007-4-29 12:07
问题就出在
Set m=f.CopyFile("D:\a.txt")
应该为
Set m=fso.CopyFile("D:\a.txt")
或者
Set m=f.Copy("D:\a.txt")