C#对本地文件重命名--适用于下载的图片、电视剧等奇怪名字的重命名
下载一部电视剧,名字给你起的10.1寸的屏幕展示不了,下载几张图片,图片的名字又是年月日时分秒,又是随机数,搞的一个名字很不直接,很长,看着不知道到底看到哪了,简单的重命名工具可以解决类似问题。
winForm版的C#小程序:如下:btnOpen_Click() 方法即图片中的按钮:浏览并执行
1 private void btnOpen_Click(object sender, EventArgs e) 2 { 3 string oldPath = txtPath.Text.Trim(); 4 string[] path = System.IO.Directory.GetFiles(oldPath); 5 string newPath = txtNewPath.Text.Trim(); 6 string txtFiles = txtFileRe.Text.Trim(); 7 8 int num1 = Convert.ToInt32(txtNum1.Text.Trim()); 9 10 int num = path.Length; 11 12 for (int i = 0; i < path.Length; i++) 13 { 14 if (path.Length >= 1) 15 { 16 string name = System.IO.Path.GetDirectoryName(path[i].ToString()); 17 string extension = System.IO.Path.GetExtension(path[i].ToString()); 18 string newName = txtFiles + num1 + extension; 19 num1 = num1 + 1; 20 if (!System.IO.File.Exists(newPath)) 21 { 22 System.IO.File.Move(path[i], newPath + newName + "\r\n"); 23 } 24 txtList.Text += newPath + newName + "\r\n"; 25 26 } 27 } 28 lbl.Text = "共:" + path.Length.ToString() + "个文件"; 29 }
但是,仍然有很多不足,因为,他只能对名称固一的,如图片,电视剧等,并不能智能识别名字,还有,如果一部电视剧的原顺序错了,那么重命名后的顺序也是错的,所以,并没有智能识别电视剧是第几集了,还需要很大改进。
其中,知识点,就一个地方,Move用法,给定一个旧文件,将其移到新位置。当然,原路径和新路径是可以一样的,原理还是使用了移动的原理而已。
注意:图片中的原路径 和 新路径 中的 \ 要注意,因为原路径是找,新路径是存,多了一个 \
小工具下载:http://pan.baidu.com/share/link?uk=104317540&shareid=4003245788
补充: 自己写一个小东西重命名和我们平常用的Ctrl+A 全选,重命名有什么不同,主要有两个优点,第一是没有了扩展名的歧视,用自己写的重命名工具,不管你是什么格式的扩展名,都将按顺序命名,不会因为jpg 和 png 而名字变成同类层次,第二是,规范和可控制性更强,这点可以随便一试验,就看出来了,娱乐中的乐趣而已。