浅析VB.Net语言 复制、删除文件案例

这里讲解一个关于VB.Net语言 复制、删除文件的例子,代码详细还有注释,可以复制放在机器上跑,希望可以给大家带来帮助。

VB.NET语言经过长时间的发展,很多用户都很了解VB.NET语言了,这里我发表一个关于VB.Net语言 复制、删除文件的例子,和大家一起分享一下。
VB.Net语言 复制、删除文件代码:

  1. Imports System.IO  
  2. Imports System.IO.Directory  
  3. ' ======================================================  
  4.  
  5. ' 实现一个静态方法将指定文件夹下面的所有内容copy到目标文件夹下面  
  6.  
  7. ' 如果目标文件夹为只读属性就会报错。  
  8.  
  9. ' ======================================================  
  10. Public Shared Sub CopyDir(ByVal srcPath As String, ByVal aimPath As String)  
  11. Try  
  12. ' 检查目标目录是否以目录分割字符\结束,如果不是则添加之  
  13. If aimPath(aimPath.Length - 1) <> Path.DirectorySeparatorChar Then  
  14. aimPath += Path.DirectorySeparatorChar  
  15. End If  
  16. '判断源目录是否存在,不存在则退出.  
  17. If (Not Directory.Exists(srcPath)) Then Exit Sub  
  18. ' 判断目标目录是否存在如果不存在则新建之  
  19. If (Not Directory.Exists(aimPath)) Then Directory.CreateDirectory(aimPath)  
  20. ' 得到源目录的文件列表,该里面是包含文件以及目录路径的一个数组  
  21. ' 如果你指向copy目标文件下面的文件而不包含目录请使用下面的方法  
  22. ' string[] fileList = Directory.GetFiles(srcPath);  
  23. Dim fileList() As String = Directory.GetFileSystemEntries(srcPath)  
  24. ' 遍历所有的文件和目录  
  25. For Each FileName As String In fileList  
  26. ' 先当作目录处理如果存在这个目录就递归Copy该目录下面的文件  
  27. If Directory.Exists(FileName) Then  
  28. CopyDir(FileName, aimPath + Path.GetFileName(FileName))  
  29. ' 否则直接Copy文件  
  30. Else  
  31. File.Copy(FileName, aimPath + Path.GetFileName(FileName), True)  
  32. End If  
  33. Next  
  34. Catch ex As Exception  
  35. MessageBox.Show(ex.ToString())  
  36. End Try  
  37. End Sub  
  38. ' ======================================================  
  39.  
  40. ' 实现一个静态方法将指定文件夹下面的所有内容Detele  
  41.  
  42. ' 测试的时候要小心*作,删除之后无法恢复。  
  43.  
  44. ' ======================================================  
  45. Public Shared Sub DeleteDir(ByVal aimPath As String)  
  46. Try  
  47. ' 检查目标目录是否以目录分割字符结束如果不是则添加之  
  48. If (aimPath(aimPath.Length - 1) <> Path.DirectorySeparatorChar) Then  
  49. aimPath += Path.DirectorySeparatorChar  
  50. End If  
  51. '判断待删除的目录是否存在,不存在则退出.  
  52. If (Not Directory.Exists(aimPath)) Then Exit Sub  
  53. ' 得到源目录的文件列表,该里面是包含文件以及目录路径的一个数组  
  54. ' 如果你指向Delete目标文件下面的文件而不包含目录请使用下面的方法  
  55. ' string[] fileList = Directory.GetFiles(aimPath);  
  56. Dim fileList() As String = Directory.GetFileSystemEntries(aimPath)  
  57. ' 遍历所有的文件和目录  
  58. For Each FileName As String In fileList  
  59. If (Directory.Exists(FileName)) Then  
  60. ' 先当作目录处理如果存在这个目录就递归Delete该目录下面的文件  
  61. DeleteDir(aimPath + Path.GetFileName(FileName))  
  62. Else  
  63. ' 否则直接Delete文件  
  64. File.Delete(aimPath + Path.GetFileName(FileName))  
  65. End If  
  66. Next  
  67. '删除文件夹  
  68. System.IO.Directory.Delete(aimPath, True)  
  69. Catch ex As Exception  
  70. MessageBox.Show(ex.ToString())  
  71. End Try  
  72. End Sub 

【编辑推荐】

  • 深入分析VB.NET条件语句中的两类
  • 五大类VB.NET运算符全面介绍
  • 全面讨论VB.NET申明Windows API函数
  • 剖析VB.NET平台调用是如何执行操作
  • 分享个人总结VB.NET多线程
  •