`

VB.NET复制删除文件完整示例

    博客分类:
  • .NET
 
阅读更多
http://developer.51cto.com/art/200910/158904.htm
VB.NET版  
Imports System.IO  
Imports System.IO.Directory  
' ======================================================  
' 实现一个静态方法将指定文件夹下面的所有内容copy到目标文件夹下面  
' 如果目标文件夹为只读属性就会报错。  
' ======================================================  
Public Shared Sub CopyDir(ByVal srcPath As String, ByVal aimPath As String)  
Try  
' 检查目标目录是否以目录分割字符\结束,如果不是则添加之  
If aimPath(aimPath.Length - 1) <> Path.DirectorySeparatorChar Then  
aimPath += Path.DirectorySeparatorChar  
End If  
'判断源目录是否存在,不存在则退出.  
If (Not Directory.Exists(srcPath)) Then Exit Sub  
' 判断目标目录是否存在如果不存在则新建之  
If (Not Directory.Exists(aimPath)) Then Directory.CreateDirectory(aimPath)  
' 得到源目录的文件列表,该里面是包含文件以及目录路径的一个数组  
' 如果你指向copy目标文件下面的文件而不包含目录请使用下面的方法  
' string[] fileList = Directory.GetFiles(srcPath);  
Dim fileList() As String = Directory.GetFileSystemEntries(srcPath)  
' 遍历所有的文件和目录  
For Each FileName As String In fileList  
' 先当作目录处理如果存在这个目录就递归Copy该目录下面的文件  
If Directory.Exists(FileName) Then  
CopyDir(FileName, aimPath + Path.GetFileName(FileName))  
' 否则直接Copy文件  
Else  
File.Copy(FileName, aimPath + Path.GetFileName(FileName), True)  
End If  
Next  
Catch ex As Exception  
MessageBox.Show(ex.ToString())  
End Try  
End Sub  
' ======================================================  
' 实现一个静态方法将指定文件夹下面的所有内容Detele  
' 测试的时候要小心*作,删除之后无法恢复。  
' ======================================================  
Public Shared Sub DeleteDir(ByVal aimPath As String)  
Try  
' 检查目标目录是否以目录分割字符结束如果不是则添加之  
If (aimPath(aimPath.Length - 1) <> Path.DirectorySeparatorChar) Then  
aimPath += Path.DirectorySeparatorChar  
End If  
'判断待删除的目录是否存在,不存在则退出.  
If (Not Directory.Exists(aimPath)) Then Exit Sub  
' 得到源目录的文件列表,该里面是包含文件以及目录路径的一个数组  
' 如果你指向Delete目标文件下面的文件而不包含目录请使用下面的方法  
' string[] fileList = Directory.GetFiles(aimPath);  
Dim fileList() As String = Directory.GetFileSystemEntries(aimPath)  
' 遍历所有的文件和目录  
For Each FileName As String In fileList  
If (Directory.Exists(FileName)) Then  
' 先当作目录处理如果存在这个目录就递归Delete该目录下面的文件  
DeleteDir(aimPath + Path.GetFileName(FileName))  
Else  
' 否则直接Delete文件  
File.Delete(aimPath + Path.GetFileName(FileName))  
End If  
Next  
'删除文件夹  
System.IO.Directory.Delete(aimPath, True)  
Catch ex As Exception  
MessageBox.Show(ex.ToString())  
End Try  
End Sub 
分享到:
评论

相关推荐

    asp.net知识库

    实现C#和VB.net之间的相互转换 深入剖析ASP.NET组件设计]一书第三章关于ASP.NET运行原理讲述的补白 asp.net 运行机制初探(httpModule加载) 利用反射来查看对象中的私有变量 关于反射中创建类型实例的两种方法 ASP...

    Visual Basic 2010入门经典.part2.rar

    2.6.5 添加和删除项目文件 50 2.7 快速而简单的编程入门指南 51 2.7.1 用变量存储值 51 2.7.2 使用过程来编写代码功能单元 52 2.8 获取帮助 52 2.9 总结 53 2.10 问与答 53 2.11 作业 54 2.11.1 测验 54 ...

    郑州大学包装在线

    那几个 vb 文件是组件的源代码,mk.dat 是编译用的批处理文件。 网站发布时,这些文件应该被删除。 5)如果你使用的是 NTFS 格式的磁盘,请注意进行权限设置: 以下给出最严格的权限设置: (当然你可以...

    JAVA上百实例源码以及开源项目

     Java局域网通信——飞鸽传书源代码,大家都知道VB版、VC版还有Delphi版的飞鸽传书软件,但是Java版的确实不多,因此这个Java文件传输实例不可错过,Java网络编程技能的提升很有帮助。 Java聊天程序,包括服务端和...

    java源码包---java 源码 大量 实例

     Java局域网通信——飞鸽传书源代码,大家都知道VB版、VC版还有Delphi版的飞鸽传书软件,但是Java版的确实不多,因此这个Java文件传输实例不可错过,Java网络编程技能的提升很有帮助。 Java聊天程序,包括服务端和...

    java源码包2

     Java局域网通信——飞鸽传书源代码,大家都知道VB版、VC版还有Delphi版的飞鸽传书软件,但是Java版的确实不多,因此这个Java文件传输实例不可错过,Java网络编程技能的提升很有帮助。 Java聊天程序,包括服务端和...

    电子书架

    鉴于有用户反映,不小心删除数据库文件等其它原因引起数据丢失,所以做了一个退出时自动备份功能(当然可以不用这个功能,只要在选项设置里去掉) 多用户多库操作 支持多用户、多库操作,以收藏集为单位进行安全...

    java源码包3

     Java局域网通信——飞鸽传书源代码,大家都知道VB版、VC版还有Delphi版的飞鸽传书软件,但是Java版的确实不多,因此这个Java文件传输实例不可错过,Java网络编程技能的提升很有帮助。 Java聊天程序,包括服务端和...

    java源码包4

     Java局域网通信——飞鸽传书源代码,大家都知道VB版、VC版还有Delphi版的飞鸽传书软件,但是Java版的确实不多,因此这个Java文件传输实例不可错过,Java网络编程技能的提升很有帮助。 Java聊天程序,包括服务端和...

    成百上千个Java 源码DEMO 4(1-4是独立压缩包)

    Java二进制IO类与文件复制操作实例 16个目标文件 内容索引:Java源码,初学实例,二进制,文件复制 Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系...

    成百上千个Java 源码DEMO 3(1-4是独立压缩包)

    Java二进制IO类与文件复制操作实例 16个目标文件 内容索引:Java源码,初学实例,二进制,文件复制 Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系...

    MySQL5.1参考手册官方简体中文版

    6.3.4. 复制传递和状态文件 6.4. 如何设置复制 6.5. 不同MySQL版本之间的复制兼容性 6.6. 升级复制设置 6.6.1. 将复制升级到5.0版 6.7. 复制特性和已知问题 6.8. 复制启动选项 6.9. 复制FAQ 6.10. 复制故障诊断与...

    JAVA上百实例源码以及开源项目源代码

     Java局域网通信——飞鸽传书源代码,大家都知道VB版、VC版还有Delphi版的飞鸽传书软件,但是Java版的确实不多,因此这个Java文件传输实例不可错过,Java网络编程技能的提升很有帮助。 Java聊天程序,包括服务端和...

    mysql官方中文参考手册

    6.3.4. 复制传递和状态文件 6.4. 如何设置复制 6.5. 不同MySQL版本之间的复制兼容性 6.6. 升级复制设置 6.6.1. 将复制升级到5.0版 6.7. 复制特性和已知问题 6.8. 复制启动选项 6.9. 复制FAQ 6.10. 复制故障诊断与...

    MYSQL中文手册

    6.3.4. 复制传递和状态文件 6.4. 如何设置复制 6.5. 不同MySQL版本之间的复制兼容性 6.6. 升级复制设置 6.6.1. 将复制升级到5.0版 6.7. 复制特性和已知问题 6.8. 复制启动选项 6.9. 复制FAQ 6.10. 复制故障...

    MySQL 5.1参考手册中文版

    6.3.4. 复制传递和状态文件 6.4. 如何设置复制 6.5. 不同MySQL版本之间的复制兼容性 6.6. 升级复制设置 6.6.1. 将复制升级到5.0版 6.7. 复制特性和已知问题 6.8. 复制启动选项 6.9. 复制FAQ 6.10. 复制故障...

    MySQL 5.1参考手册

    6.3.4. 复制传递和状态文件 6.4. 如何设置复制 6.5. 不同MySQL版本之间的复制兼容性 6.6. 升级复制设置 6.6.1. 将复制升级到5.0版 6.7. 复制特性和已知问题 6.8. 复制启动选项 6.9. 复制FAQ 6.10. 复制故障诊断与...

    MySQL 5.1中文手冊

    6.3.4. 复制传递和状态文件 6.4. 如何设置复制 6.5. 不同MySQL版本之间的复制兼容性 6.6. 升级复制设置 6.6.1. 将复制升级到5.0版 6.7. 复制特性和已知问题 6.8. 复制启动选项 6.9. 复制FAQ 6.10. 复制故障诊断与...

Global site tag (gtag.js) - Google Analytics