Directory文档目录操作
Directory.CreateDirectory(@"d:\qiufeng");//创建一个文件夹
Directory.Delete(@"d:\qiufeng");//删除一个文件夹
注意:当qiufeng这个文件夹存在时,如果里面有文件夹,则创建文件夹不会起作用,但是删除则会报错
所以删除之前我们需要判断是否存在有文件内容
Directory.Exists(@"d:\qiufeng")
Directory.Delete(@"d:\qiufeng",true)为true则表示删除,如果不写,或者false则会报上面的错误
if (Directory.Exists(@"d:\qiufeng")) { Directory.Delete(@"d:\qiufeng",true); }
Directory.Move
顾名思义,就是实现文件的移动
Directory.Move(@"j:\123", @"j:\456");
这样是不能移动的,我们想把123的文件夹移动到456中我们必须这样
Directory.Move(@"j:\123", @"j:\456\123");
File文件的操作和Directory基本类似,如复制
File.Copy(@"j:\123.txt", @"j:\qq.txt");把123的文本复制为qq的文本
File.Exist();File.Copy();File.Move();File.Delete();
获得指定目录下面的所有文件:
string[] str = Directory.GetFiles(@"j:\qiufeng", "*.txt");获得所有后缀为txt的文件
下面我们实现一个批量改名
string[] str = Directory.GetFiles(@"j:\qiufeng", "*.txt"); for (int i = 0; i < str.Length; i++) { string newStr = str[i]; newStr = Path.GetDirectoryName(newStr);//返回指定路径字符串的目录信息这里为j:\qiufeng newStr = Path.Combine(newStr, i.ToString("0000") + ".txt");//讲两个字符串合并为一个路径 File.Move(str[i], newStr); }
另外一种实现方法:
string[] str = Directory.GetFiles(@"j:\qiufeng", "*.txt"); for (int i = 0; i < str.Length; i++) { string newStr = str[i]; int index = newStr.LastIndexOf('\\'); newStr = newStr.Substring(0, index + 1); newStr = newStr + i.ToString("0000") + ".txt"; File.Move(str[i], newStr); }