C#對(duì)文件進(jìn)行批量重命名或者對(duì)某單個(gè)文件進(jìn)行改名的示例代碼
一、FolderBrowserDialog
FolderBrowserDialog是一個(gè)用于選擇文件夾的對(duì)話框控件,可以在windows Forms應(yīng)用程序中使用。使用它可以讓用戶選擇一個(gè)文件夾,并返回所選文件夾的路徑。可以通過設(shè)置一些屬性來自定義對(duì)話框的外觀和行為,例如RootFolder屬性可以設(shè)置對(duì)話框的根文件夾,SelectedPath屬性可以設(shè)置對(duì)話框的默認(rèn)選中路徑。
屬性介紹
1. (Name)
控件的對(duì)象標(biāo)識(shí)符ID
2. Description
文件夾的提示信息
3. RootFolder
打開文件夾瀏覽對(duì)話框時(shí)的根目錄
4. SelectedPath
文件夾瀏覽對(duì)話框選擇的絕對(duì)路徑
5. ShowNewFolderButton
在對(duì)話框中包含新建文件夾按鈕
二、OpenFileDialog
OpenFileDialog控件用于創(chuàng)建一個(gè)打開文件對(duì)話框,允許用戶選擇文件。OpenFileDialog提供了一種簡單的方式來讓用戶選擇一個(gè)或多個(gè)文件,并獲取用戶所選文件的路徑。
OpenFileDialog是打開文件對(duì)話框的意思,即在窗體設(shè)計(jì)中,如果需要打開本地文件,就需要用到該類。
屬性 說明
InitialDirectory 對(duì)話框的初始目錄
Filter 獲取或設(shè)置當(dāng)前文件名篩選器字符串,例如,“文本文件(.txt)|.txt|所有文件(.)||.”
FilterIndex 在對(duì)話框中選擇的文件篩選器的索引,如果選第一項(xiàng)就設(shè)為1
RestoreDirectory 控制對(duì)話框在關(guān)閉之前是否恢復(fù)當(dāng)前目錄
FileName: 第一個(gè)在對(duì)話框中顯示的文件或最后一個(gè)選取的文件
Title 將顯示在對(duì)話框標(biāo)題欄中的字符
AddExtension 是否自動(dòng)添加默認(rèn)擴(kuò)展名
CheckPathExists 在對(duì)話框返回之前,檢查指定路徑是否存在
DefaultExt 默認(rèn)擴(kuò)展名
DereferenceLinks 在從對(duì)話框返回前是否取消引用快捷方式
三、Path
Path類位于System.IO命名空間中,它提供了靜態(tài)方法,用于處理文件和目錄路徑。這些方法可以用來解析、格式化和轉(zhuǎn)換文件和目錄路徑。由于Path類是靜態(tài)的,因此我們不需要?jiǎng)?chuàng)建它的實(shí)例就可以使用它的方法。
Path類的基本功能與重要特性:
Path類位于System.IO命名空間中,提供了靜態(tài)方法來處理文件和目錄路徑。這些方法可以用來解析、格式化和轉(zhuǎn)換文件和目錄路徑。以下是Path類的一些重要特性:
路徑解析:將相對(duì)路徑轉(zhuǎn)換為絕對(duì)路徑,或者提取路徑的某一部分,如文件名或擴(kuò)展名。
路徑組合:將兩個(gè)路徑片段組合成一個(gè)完整的路徑。
路徑根目錄獲?。韩@取指定路徑的根目錄部分。
跨平臺(tái)支持:Path類在不同的操作系統(tǒng)上表現(xiàn)一致,使得路徑操作在跨平臺(tái)應(yīng)用中變得簡單。
四、ui設(shè)計(jì)
說明:點(diǎn)擊上傳文件夾路徑的textbox1控件,將獲得的文件夾絕對(duì)路徑放到textbox1.text中,點(diǎn)擊上傳控件后,將獲取的路徑中的文件內(nèi)容顯示到textbox2控件.text中,在textbox3控件中輸入要修改的名稱,點(diǎn)擊“修改文件夾中的全部內(nèi)容”按鍵,既能對(duì)文件夾中的全部文件進(jìn)行重命名,并且在名稱后面加上數(shù)字編號(hào)。點(diǎn)擊textbox4控件,獲得要對(duì)某個(gè)單獨(dú)的文件進(jìn)行修改名稱的文件的絕對(duì)路徑,在textbox3中輸入要修改的名稱,點(diǎn)擊單獨(dú)修改某一個(gè)文件的按鈕,即能夠?qū)δ硞€(gè)文件進(jìn)行單獨(dú)修改名稱的操作。
控件名稱 | 作用 | 事件 | 作用 |
textBox1 | 獲取要整體修改名稱的文件夾 | xuanze_click | 點(diǎn)擊控件,獲取選擇的文件夾的絕對(duì)路徑 |
button1 | 上傳按鈕 | shang_click | 點(diǎn)擊一下將選擇的文件夾內(nèi)的文件顯示在textBox2中 |
textBox3 | 獲取要修改的名稱 | xiu_click | 點(diǎn)擊一下,對(duì)文件夾中文件進(jìn)行全部修改 |
textBox4 | 獲取要修改的文件的絕對(duì)路徑 | button3_Click | 點(diǎn)擊一下對(duì)單獨(dú)的某個(gè)文件名稱進(jìn)行修改 |
五、代碼部分
using System; using System.IO; using System.Collections.Generic; using System.Linq; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace 對(duì)文件進(jìn)行重命名 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void xuanze_click(object sender, EventArgs e) { FolderBrowserDialog dilog = new FolderBrowserDialog(); string str = @"F:"; dilog.Description = "請(qǐng)選擇文件夾"; if (dilog.ShowDialog() == DialogResult.OK) { textBox1.Text = dilog.SelectedPath; } } private void shang_click(object sender, EventArgs e) { if(textBox1.Text=="") { MessageBox.Show("路徑不能為空"); } else { string path = textBox1.Text; DirectoryInfo root = new DirectoryInfo(path); FileInfo[] files = root.GetFiles(); List<FileInfo> listFiles = files.ToList(); for (int i = 0; i < listFiles.Count; i++) { //textBox2.AppendText(listFiles[i].FullName); //textBox2.AppendText("\r\n"); //textBox2.AppendText(Environment.NewLine); textBox2.AppendText(listFiles[i].Name); textBox2.AppendText("\r\n"); } } } private void xiu_click(object sender, EventArgs e) { if (textBox3.Text == "") { MessageBox.Show("修改內(nèi)容不能為空"); } else { string path = textBox1.Text; DirectoryInfo root = new DirectoryInfo(path); FileInfo[] files = root.GetFiles(); List<FileInfo> listFiles = files.ToList(); for (int i = 0; i < listFiles.Count; i++) { string srcFileName = listFiles[i].FullName; string destFileName = listFiles[i].Directory.FullName + "\\" + textBox3.Text + string.Format("({0})", i + 1) + listFiles[i].Extension; File.Move(srcFileName, destFileName); } MessageBox.Show("已經(jīng)完成了"); textBox2.Text = ""; OpenFileDialog Openfile = new OpenFileDialog(); Openfile.InitialDirectory = path; Openfile.ShowDialog(); } } private void xz1_click(object sender, EventArgs e) { OpenFileDialog Openfile = new OpenFileDialog(); string str = @"F:"; Openfile.InitialDirectory = str; Openfile.Title = "請(qǐng)選擇文件路徑"; if (Openfile.ShowDialog() == DialogResult.OK) { textBox4.Text = Openfile.FileName; } } private void button3_Click(object sender, EventArgs e) { if (textBox3.Text == "") { MessageBox.Show("修改內(nèi)容不能為空"); } else { string path = textBox4.Text; string srcFileName = path; string destFileName = Path.GetDirectoryName(path) + "\\" + textBox3.Text + Path.GetExtension(path); File.Move(srcFileName, destFileName); textBox4.Text = ""; textBox3.Text = ""; MessageBox.Show("已經(jīng)完成了"); } } private string aa() { OpenFileDialog Openfile = new OpenFileDialog(); string str = @"F:"; Openfile.InitialDirectory = str; Openfile.Title = "請(qǐng)選擇文件路徑"; if (Openfile.ShowDialog() == DialogResult.OK) { return Openfile.FileName; } else { return ""; } } private void textBox4_TextChanged(object sender, EventArgs e) { } } }
以上就是C#對(duì)文件進(jìn)行批量重命名或者對(duì)某單個(gè)文件進(jìn)行改名的示例代碼的詳細(xì)內(nèi)容,更多關(guān)于C#文件重命名的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Graphics.DrawImage繪制的圖像變大的原因分析及解決
這篇文章主要介紹了Graphics.DrawImage繪制的圖像變大的原因分析及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-11-11c#高效率導(dǎo)出多維表頭excel的實(shí)例代碼
這篇文章介紹了c#高效率導(dǎo)出多維表頭excel的實(shí)例代碼,有需要的朋友可以參考一下2013-11-11C# MeasureString測量字符串函數(shù)的使用方法
這篇文章主要介紹了C# MeasureString測量字符串函數(shù)的使用方法,需要的朋友可以參考下2014-10-10C# winform程序?qū)崿F(xiàn)開機(jī)自啟動(dòng)并且識(shí)別是開機(jī)啟動(dòng)還是雙擊啟動(dòng)
這篇文章主要介紹了C# winform程序?qū)崿F(xiàn)開機(jī)自啟動(dòng)并且識(shí)別是開機(jī)啟動(dòng)還是雙擊啟動(dòng)的實(shí)現(xiàn)代碼,代碼簡單易懂,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-10-10Unity實(shí)現(xiàn)大轉(zhuǎn)盤的簡單筆記
這篇文章主要為大家分享了Unity實(shí)現(xiàn)大轉(zhuǎn)盤的簡單筆記,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-02-02C#基于Socket套接字的網(wǎng)絡(luò)通信封裝
這篇文章主要為大家詳細(xì)介紹了C#基于Socket套接字的網(wǎng)絡(luò)通信封裝本文實(shí)例為大家分享了Java實(shí)現(xiàn)圖片旋轉(zhuǎn)的具體代碼,供大家參考,具體內(nèi)容如下2021-11-11C#調(diào)用usb攝像頭的實(shí)現(xiàn)方法
這篇文章主要介紹了C#調(diào)用usb攝像頭的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02