vb拷貝文件夾
❶ VB怎樣將文件夾復制到指定位置,注意是文件夾。
VB復制文件夾使用CopyFolder方法實現。
CopyFolder 方法
描述
從一個地方遞歸地復制一個文件夾到另一個地方。
語法
object.CopyFolder source, destination[,
overwrite]
實現代碼中的source路徑不能有錯,否則VB報錯。
將C盤下的Program Flles目錄夾復制到D盤Program Flles目錄夾的實際代碼如下:
Private Sub Command1_Click()
CreateObject("scripting.filesystemobject").folder "c:\Program Files", "D:\Program Files"
End Sub
❷ VB 復制文件夾函數
用CopyFolder 方法可以復制文件夾。
語法
object.CopyFolder source, destination[, overwrite]
其中,object只能是FileSystemObject對象(見後面示例).
CopyFolder 方法語法有如下幾部分:
Object 必需的。始終為一個 FileSystemObject 的名字。
source 必需的。指明一個或多個被復制文件夾的字元串文件夾說明,可以包括通配符。
destination 必需的。指明 source 中被復制文件夾和子文件夾的接受端的字元串,不允許有通配符。
overwrite 選項的。Boolean 值,它表示已存在的文件夾是否被覆蓋。如果為 True,文件被覆蓋。如果為 False,文件不被覆蓋。預設值為 True。
說明
通配符僅可用於 source 參數的最後一個路徑部件。例如你可以在下面情況使用它:
FileSystemObject.CopyFolder "c:\mydocuments\letters\*", "c:\tempfolder\"
但不能在下面情況使用它:
FileSystemObject.CopyFolder "c:\mydocuments\*\*", "c:\tempfolder\"
如果 source 包含通配符或 destination 以路徑分隔符(\)為結尾,則認為 destination 是一個已存在的文件夾,在其中復制相匹配的文件夾和子文件夾。否則認為 destination 是一個要創建的文件夾的名字。不論何種情況,當復制一個文件夾時,可能發生四種事件。
如果 destination 不存在,source 文件夾和它所有的內容得到復制。這是通常的情況。
如果 destination 是一個已存在的文件,則發生一個錯誤。
如果 destination 是一個目錄,它將嘗試復制文件夾和它所有的內容。如果一個包含在 source 的文件已在 destination 中存在,當 overwrite 為 False 時發生一個錯誤,否則它將嘗試覆蓋這個文件。
如果 destination 是一個只讀目錄,當嘗試去復制一個已存在的只讀文件到此目錄並且 overwrite為 False 時,則發生一個錯誤。
如果 source 使用的通配符不能和任何文件夾匹配,也發生一個錯誤。
CopyFolder 方法停止在它遇到的第一個錯誤上。不要嘗試回卷錯誤發生前所做的任何改變。
示例:
Set fs = CreateObject("Scripting.FileSystemObject")
fs.CopyFolder "C:\Downloads\", "D:\"
FileSystemObject對象除了CopyFolder方法,還有其它很多,如BuildPath、CopyFile、CreatFolder等等,詳見msdn幫助
❸ VB怎樣復制文件夾(包括裡面的文件)
給你一個列子
sourcePath 為源文件地址
targetPath 存放文件的地址
'復制文件夾到指定位置
Function CopyDir(ByVal sourcePath As String, ByVal targetPath As String) As Boolean
Try
'檢查目標目錄是否以目錄分隔符結束,不是則添加
If Microsoft.VisualBasic.Right(targetPath, 1) <> "" Then targetPath += System.IO.Path.DirectorySeparatorChar
'判斷目標目錄是否存在,不存在則新建
If Not Directory.Exists(targetPath) Then Directory.CreateDirectory(targetPath)
'得到源目錄的文件列表,該文件裡面是包含文件以及目錄路徑的一個數組
Dim fileList As String() = Directory.GetFileSystemEntries(sourcePath)
'遍歷所有的文件和目錄
For Each filepath As String In fileList
'目錄處理,遞歸
If (Directory.Exists(filepath)) Then
CopyDir(filepath, targetPath + Path.GetFileName(filepath))
Else
'復制文件
File.Copy(filepath, targetPath + Path.GetFileName(filepath), True)
End If
Next
Return True
Catch ex As Exception
Return False
End Try
End Function
希望對你有所幫助·····
❹ VB怎麼用file復制文件夾
VB復制文件夾使用CopyFolder方法實現。
CopyFolder 方法
描述
從一個地方遞歸地復制一個文件夾到另一個地方。
語法
object.CopyFolder source, destination[,
overwrite]
PrivateSubCommand1_Click()
CreateObject("scripting.filesystemobject").folder"c:ProgramFiles","D:ProgramFiles"
EndSub
❺ vb中復制文件
用API函數 SHFileOperation的方法。
❻ VB中怎麼將一個文件復制到指定文件夾
Dim fs ' 先聲明一個變體型
Set fs = CreateObject("Scripting.FileSystemObject") '創建文件系統對象fs
fs.file "D:\to.txt", "E:\" '使用該對象的file方法將源文件復制到目標文件
❼ VB.NET2010 如何復制指定目錄下按類型的所有文件到另一文件夾 復制後再刪除原來的文件
這段代碼的問題是:
首先for each循環在files里查找文件對象,但是f變數聲明為string了,無法讓它獲取對象;
然後file.的變數file沒有任何聲明,也沒有初始化賦值等;
最後,整個for each循環里查找集合files的文件,由於初始化的循環計數器仍然按照最初設定的文件數目向後遞增(文件地址),但是實際文件刪除一部分,後續的文件位置就不能跟循環計數指針匹配了,所以默認為查找不到文件,將會報錯。一般的做法時把復制和刪除分別放在2次循環里,第一次只復制文件,第二次才去刪除。
❽ vb中如何將一個文件的所有東西復制到另一個文件夾
調用外部的dos
的命令,可以實現的要求...
shell
"cmd
/c
c:\1.doc
d:\001\"
用vb的文件復制,需要指定目標文件的姓名.
不過這樣不符合你的要求.
Dim
result,
Sourcefile,
Destinationfile
As
String
result
=
MsgBox(
"確定要復制嗎?
",
vbYesNo,
"詢問
")
If
result
=
vbYes
Then
Sourcefile
=
"c:\1.doc"
Destinationfile
=
"d:\001\1.doc"
FileCopy
Sourcefile,
Destinationfile
End
If