VB.NET 移动指定类型文件,直接复制可用
代码不难,主要是“Directory.GetFiles”和“File.Move”的调用。
但调试了很久,因为之前没注意“Directory.GetFiles”获取的文件名是包含其所在路径的完全体,调试时一直上报文件路径格式错误。
【“System.NotSupportedException”类型的未经处理的异常在 mscorlib.dll 中发生 其他信息: 不支持给定路径的格式。】
修正了这个路径问题之后就很好用啦!
Dim Dataname As String'定义一个文件名
WorkPath = System.IO.Directory.GetCurrentDirectory()‘获取当前路径
Dim allfiles As String() = Directory.GetFiles(WorkPath, "*.csv")‘获取当前路径下所有指定类型的文件(已CSV文件为例)
For Each Dataname In allfiles'注意,这个文件名是包含所在路径的完整的文件名称
Dim Datanames As String()
Datanames = Dataname.Split("\")'将文件名称拆分,提取不包含路径的目标文件名称
'File.Move(WorkPath & "\" & Dataname, WorkPath & "\历史数据\" & Datanames(Datanames.Length - 1)) ‘在获取的文件名前再加路径是错误的用法
File.Move(Dataname, WorkPath & "\历史数据\" & Datanames(Datanames.Length - 1)) '将目标类型文件移动到当前路径下的“历史数据”文件夹
Next