如何通过 VB.net 将文件从桌面文件夹复制到 USB
How to copy files from desktop folder to usb via VB.net
我的店里有 5 台电脑 3 windows 7 和 2 windows XP。每台电脑都由不同的用户使用他们的帐户(帐户名称不同)进行操作。每台 PC 的桌面上都有一个名为 "papers"(唯一)的主文件夹。文件夹 "papers" 还包含子文件夹和文件。当我从 USB 根目录单击应用程序时,我想将该文件夹(文件)复制到我的 USB 记忆棒。
User 1 : C:\Users\Peter\Desktop\papers\
User 2 : C:\Users\Ruwan\Desktop\papers\
User 3 : C:\Users\Sam\Desktop\papers\
User 4 : C:\Users\Roshy\Desktop\papers\
User 5 : C:\Users\Veronica\Desktop\papers\
Here the user's name is change to different users.
在编码中,我将 FileToCopy 的值分配为单个文件 (Java_OOPs.docx)。我想更改 FileToCopy 值,将整个 "papers" 文件夹复制到 USB。
我的问题是如何将文件夹(论文)和子文件夹复制到USB以及桌面文件夹的通用名称(因为用户名正在更改)(访问桌面"papers"文件夹)
注意:此应用程序也可以在 Windows XP 上 运行。
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim Gig As Long = 1073741824
Dim FileToCopy As String = "C:\Users\Peter\Desktop\papers\Java_OOPs.docx"
Try
For Each drive As System.IO.DriveInfo In System.IO.DriveInfo.GetDrives
If drive.DriveType = IO.DriveType.Removable AndAlso drive.IsReady AndAlso drive.AvailableFreeSpace >= 2 * Gig Then
Dim DriveLetter As String = drive.Name
Dim PathToUSBDrive = DriveLetter & IO.Path.GetFileName(FileToCopy)
IO.File.Copy(FileToCopy, PathToUSBDrive)
End If
Next
Catch ex As Exception
End Try
End Sub
End Class
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim Gig As Long = 1073741824L
Dim FolderToCopy As String = IO.Path.Combine(My.Computer.FileSystem.SpecialDirectories.Desktop, "papers")
Try
For Each Drive As IO.DriveInfo In IO.DriveInfo.GetDrives
Select Case True
Case Not Drive.DriveType = IO.DriveType.Removable
Case Not Drive.IsReady
Case Not Drive.AvailableFreeSpace >= 2 * Gig
Case Else
Debug.Print("Copying {0} to {1}", FolderToCopy, Drive.RootDirectory.FullName)
My.Computer.FileSystem.CopyDirectory(FolderToCopy, Drive.RootDirectory.FullName, True)
' Only do the copy once to first appropriate drive
Exit For
End Select
Next
Catch ex As Exception
Debug.Print(ex.ToString)
End Try
End Sub
End Class
我的店里有 5 台电脑 3 windows 7 和 2 windows XP。每台电脑都由不同的用户使用他们的帐户(帐户名称不同)进行操作。每台 PC 的桌面上都有一个名为 "papers"(唯一)的主文件夹。文件夹 "papers" 还包含子文件夹和文件。当我从 USB 根目录单击应用程序时,我想将该文件夹(文件)复制到我的 USB 记忆棒。
User 1 : C:\Users\Peter\Desktop\papers\
User 2 : C:\Users\Ruwan\Desktop\papers\
User 3 : C:\Users\Sam\Desktop\papers\
User 4 : C:\Users\Roshy\Desktop\papers\
User 5 : C:\Users\Veronica\Desktop\papers\
Here the user's name is change to different users.
在编码中,我将 FileToCopy 的值分配为单个文件 (Java_OOPs.docx)。我想更改 FileToCopy 值,将整个 "papers" 文件夹复制到 USB。
我的问题是如何将文件夹(论文)和子文件夹复制到USB以及桌面文件夹的通用名称(因为用户名正在更改)(访问桌面"papers"文件夹)
注意:此应用程序也可以在 Windows XP 上 运行。
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim Gig As Long = 1073741824
Dim FileToCopy As String = "C:\Users\Peter\Desktop\papers\Java_OOPs.docx"
Try
For Each drive As System.IO.DriveInfo In System.IO.DriveInfo.GetDrives
If drive.DriveType = IO.DriveType.Removable AndAlso drive.IsReady AndAlso drive.AvailableFreeSpace >= 2 * Gig Then
Dim DriveLetter As String = drive.Name
Dim PathToUSBDrive = DriveLetter & IO.Path.GetFileName(FileToCopy)
IO.File.Copy(FileToCopy, PathToUSBDrive)
End If
Next
Catch ex As Exception
End Try
End Sub
End Class
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim Gig As Long = 1073741824L
Dim FolderToCopy As String = IO.Path.Combine(My.Computer.FileSystem.SpecialDirectories.Desktop, "papers")
Try
For Each Drive As IO.DriveInfo In IO.DriveInfo.GetDrives
Select Case True
Case Not Drive.DriveType = IO.DriveType.Removable
Case Not Drive.IsReady
Case Not Drive.AvailableFreeSpace >= 2 * Gig
Case Else
Debug.Print("Copying {0} to {1}", FolderToCopy, Drive.RootDirectory.FullName)
My.Computer.FileSystem.CopyDirectory(FolderToCopy, Drive.RootDirectory.FullName, True)
' Only do the copy once to first appropriate drive
Exit For
End Select
Next
Catch ex As Exception
Debug.Print(ex.ToString)
End Try
End Sub
End Class