日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

C# 批量重命名文件

發布時間:2023/12/13 综合教程 20 生活家
生活随笔 收集整理的這篇文章主要介紹了 C# 批量重命名文件 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

C# 批量重命名文件

有些時候,我們下載了一些聽書的MP3文件,或者是一些美劇、網劇,下載下來之后發現這些文件具有一定的規律,比如下圖。但是有些時候我們需要修改這些文件的文件名,一個一個文件重命名是非常反人類的,我們不需要重復造輪子。如果只是單純地從文件名里替換掉一些字符,比如替換:【慶余年網劇高清】01 里面的“高清”為“HD”,變成 【慶余年網劇HD】01 ,這種方式的可以使用windows的powershell功能。
仙人指路:https://blog.csdn.net/u010295735/article/details/90054186

由上圖可以發現,這些音頻文件前面都有編號,后面跟著下劃線的字母,本人有些許強迫癥,只想保留編號,即001_a文件重命名為1,031_be文件重命名為31,手動重命名機器麻煩,況且這部小說的音頻文件有247個。于是我打算用C#進行批量重命名。
先創建一個Windows窗體應用類型的項目,**項目名為:批量重命名文件(不推薦使用中文,我是為了圖方便)**, 然后進行界面編輯,這個應用的界面很簡單,用了一個標簽控件,兩個按鈕控件。

“選擇目錄”按鈕的變量名為:btnSelectFile
輸入框的變量名為:textBox1
“批量修改”按鈕的變量名為:btnAlter

后臺代碼如下:

 1 using System;
 2 using System.Collections.Generic;
 3 using System.ComponentModel;
 4 using System.Drawing;
 5 using System.Data;
 6 using System.Linq;
 7 using System.Text;
 8 using System.Threading.Tasks;
 9 using System.Windows.Forms;
10 using System.IO;
11 
12 namespace 批量重命名文件
13 {
14     public partial class UserControl1: UserControl
15     {
16         public UserControl1()
17         {
18             InitializeComponent();
19         }
20 
21         /// <summary>
22         /// 選擇目錄按鈕響應事件
23         /// </summary>
24         /// <param name="sender"></param>
25         /// <param name="e"></param>
26         private void btnSelectFile_Click(object sender, EventArgs e)
27         {
28             FolderBrowserDialog folder = new FolderBrowserDialog();
29             if (folder.ShowDialog()==DialogResult.OK) 
30             {
31                 textBox1.Text = folder.SelectedPath;//獲取目錄的路徑
32             }
33         }
34 
35         /// <summary>
36         /// 批量修改按鈕響應事件
37         /// </summary>
38         /// <param name="sender"></param>
39         /// <param name="e"></param>
40         private void btnAlter_Click(object sender, EventArgs e)
41         {
42             DirectoryInfo directory = new DirectoryInfo(textBox1.Text);
43             var Files = directory.GetFiles(); //獲取文件列表
44             try
45             {
46                 //遍歷文件列表
47                 foreach (var file in Files) 
48                 {
49                     if (file.Name.Substring(0,1) == "0")
50                     {
51                         if (file.Name.Substring(1, 1) == "0")
52                         {
53                             var str = file.Name.Substring(2, 1);
54                             var hz = file.Extension;//獲取文件的擴展名(后綴名)
55                             file.MoveTo(textBox1.Text + "\" + str + hz);//重命名后的文件保存在原來的目錄下
56                         }
57                         else 
58                         {
59                             var str = file.Name.Substring(1, 2);
60                             var hz = file.Extension;//獲取文件的擴展名(后綴名)
61                             file.MoveTo(textBox1.Text + "\" + str + hz);//重命名后的文件保存在原來的目錄下
62                         }
63                     }
64                     else 
65                     {
66                         var str = file.Name.Substring(0,3);
67                         var hz = file.Extension;//獲取文件的擴展名(后綴名)
68                         //修改文件名的方法。
69                         file.MoveTo(textBox1.Text + "\" + str + hz);//重命名后的文件保存在原來的目錄下
70                     }
71                 }
72                 MessageBox.Show("批量重命名成功!");
73             }
74             catch (Exception ex)
75             {
76                 MessageBox.Show(ex.Message);
77             }
78         }
79     }
80 }

思路

根據這些文件名的規律以及我的需求,實現這個功能也不難,我們只需關注文件名前面3為字符即可,001改為1,031改為31,所以先獲取文件名,然后截取文件名的第一位,判斷是否為0,不為0證明文件名類似172_gp,我們只需把172后面的_gp去掉然后加上后綴再重命名保存在原位置即可。
第一位為0的話就繼續判斷第二位字符,不為0證明是031這種文件名,去掉031前面的0和后面多余的字符串進行重命名即可,為0證明是001這種,把001前面的00和后面多余的字符串去掉,然后重命名。
運行無錯則提示批量修改成功。

運行

源碼

百度網盤:
鏈接: https://pan.baidu.com/s/1I21TtTKO4DF_AnZ8_GBcSQ 提取碼: s4kx

大家可以根據自己的需求和網劇名字的規律對代碼進行規則修改,用來實現自己想要的功能。

總結

以上是生活随笔為你收集整理的C# 批量重命名文件的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。