
'引用fso对象
dim
fso
as
new
filesystemobject
dim
folder1
as
folder
set
folder1=fsogetfolder("d:\1")'文件夹路径名字
folder1copy
"e:\"
'拷贝到e盘,若e盘有同名文件夹,则覆盖!
或
'引用fso对象
dim
fso
as
new
filesystemobject
fsocopyfolder
"d:\1","e:\",true
'效果和上面相同!
用CopyFolder 方法可以复制文件夹。
语法
objectCopyFolder source, destination[, overwrite]
其中,object只能是FileSystemObject对象(见后面示例)
CopyFolder 方法语法有如下几部分:
Object 必需的。始终为一个 FileSystemObject 的名字。
source 必需的。指明一个或多个被复制文件夹的字符串文件夹说明,可以包括通配符。
destination 必需的。指明 source 中被复制文件夹和子文件夹的接受端的字符串,不允许有通配符。
overwrite 选项的。Boolean 值,它表示已存在的文件夹是否被覆盖。如果为 True,文件被覆盖。如果为 False,文件不被覆盖。缺省值为 True。
说明
通配符仅可用于 source 参数的最后一个路径部件。例如你可以在下面情况使用它:
FileSystemObjectCopyFolder "c:\mydocuments\letters\", "c:\tempfolder\"
但不能在下面情况使用它:
FileSystemObjectCopyFolder "c:\mydocuments\\", "c:\tempfolder\"
如果 source 包含通配符或 destination 以路径分隔符(\)为结尾,则认为 destination 是一个已存在的文件夹,在其中复制相匹配的文件夹和子文件夹。否则认为 destination 是一个要创建的文件夹的名字。不论何种情况,当复制一个文件夹时,可能发生四种事件。
如果 destination 不存在,source 文件夹和它所有的内容得到复制。这是通常的情况。
如果 destination 是一个已存在的文件,则发生一个错误。
如果 destination 是一个目录,它将尝试复制文件夹和它所有的内容。如果一个包含在 source 的文件已在 destination 中存在,当 overwrite 为 False 时发生一个错误,否则它将尝试覆盖这个文件。
如果 destination 是一个只读目录,当尝试去复制一个已存在的只读文件到此目录并且 overwrite为 False 时,则发生一个错误。
如果 source 使用的通配符不能和任何文件夹匹配,也发生一个错误。
CopyFolder 方法停止在它遇到的第一个错误上。不要尝试回卷错误发生前所做的任何改变。
示例:
Set fs = CreateObject("ScriptingFileSystemObject")
fsCopyFolder "C:\Downloads\", "D:\"
FileSystemObject对象除了CopyFolder方法,还有其它很多,如BuildPath、CopyFile、CreatFolder等等,详见msdn帮助
FileCopy replace(apppath & "\" & appexename,"\\","\"),replace("C:\456\" & appexename,"\\","\")
这样就可以了```
apppath & "\" & appexename & "exe"的结果是程序本身的完全路径,也许有人会说为什么不直接写apppath & appexename & "exe",因为这样写会有2个可能性:
1假设文件在如C:\aaa的目录下,程序文件名为bbbexe,``这样的话
apppath & appexename & "exe"得出的结果为c:\aaabbbexe,这样是错误的,而apppath & "\" & appexename & "exe"的结果才是正确的c:\aaa\bbbexe
2如果文件在c:\下,程序文件名为bbbexe,这样apppath & appexename & "exe"得出的结果就是C:\bbbexe,是真确的,而apppath & "\" & appexename & "exe"又会得出错误的结果C:\\bbbexe
所以为了使程序在以上2个可能性的时候都能正确运行``这样写
replace(apppath & "\" & appexename,"\\","\")
这样的话可以把apppath & "\" & appexename所得结果中所有的\\替换为\,就可以避免错误````
除了 唯漠情 说的做法,还可以在所有局域网电脑上开启共享,建立起统一的帐户,可以用同一个账号密码登录不同机器。这样,仅在其中一台电脑上做个软件,自动使用系统的文件共享来传输文件即可。
我在亲戚的打印部里,就是用这种方式实现的双机互相备份功能的。
Private Sub Form_Load()
ToPath = "C:\AppCache\0JPG"
FromPath = "D:\CODE\0JPG"
FileCopy FromPath, ToPath
End Sub
FileCopy 语句
复制一个文件。
语法
FileCopy source, destination
FileCopy 语句的语法含有以下这些命名参数:
部分 描述
source 必要参数。字符串表达式,用来表示要被复制的文件名。source 可以包含目录或文件夹、以及驱动器。
destination 必要参数。字符串表达式,用来指定要复制的目地文件名。destination 可以包含目录或文件夹、以及驱动器。
说明
如果想要对一个已打开的文件使用 FileCopy 语句,则会产生错误。
示例
本示例使用 FileCopy 语句来复制文件。示例中假设 SRCFILE 为含有数据的文件。
Dim SourceFile, DestinationFile
SourceFile = "SRCFILE" ' 指定源文件名。
DestinationFile = "DESTFILE" ' 指定目的文件名。
FileCopy SourceFile, DestinationFile ' 将源文件的内容复制到目的文件中。
FileCopy 可以实现简单的文件复制,更复杂的复制参照FileSystemObject对象
Set objFso = CreateObject("ScriptingFileSystemObject")
Dim fs ' 先声明一个变体型
Set fs = CreateObject("ScriptingFileSystemObject") '创建文件系统对象fs
fscopyfile "D:\copytotxt", "E:\" '使用该对象的copyfile方法将源文件复制到目标文件
以上就是关于用VB如果拷贝文件夹全部的内容,包括:用VB如果拷贝文件夹、VB 复制文件夹函数、VB6.0中怎么复制、移动文件等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)