在編程開發中,修改文件名是非常常見的操作。針對C#語言,本文將從多個方面對修改文件名做詳細的闡述,包括基礎語法、文件重命名、批量重命名等內容。
一、基礎語法
string path = @"C:\test\test.txt";
string newFileName = "newTest.txt";
System.IO.File.Move(path, path.Replace(System.IO.Path.GetFileName(path), newFileName));
上述代碼中,使用C#內置的System.IO命名空間的File類,首先聲明一個文件路徑字符串path和要修改的新文件名newFileName。接着利用Path類的GetFileName()方法獲取path的文件名,並替換為newFileName,最終使用Move()方法對文件進行重命名。
如果文件路徑中包含空格或特殊字符,可以使用@符號作為前綴來指示該字符串應該被視為字面值。在下面的例子中,我們將原始路徑包含在@””中。
string path = @"C:\test folder\test.txt";
string newFileName = "newTest.txt";
System.IO.File.Move(path, path.Replace(System.IO.Path.GetFileName(path), newFileName));
二、文件重命名
單個文件的重命名非常簡單,只需要使用System.IO.File.Move()方法即可。
string path = @"C:\test\test.txt";
string newFileName = "newTest.txt";
System.IO.File.Move(path, path.Replace(System.IO.Path.GetFileName(path), newFileName));
如果你只是想將當前文件的擴展名更改為另一個,可以使用擴展名方法。下面的示例將.txt文件改成.doc文件。
string path = @"C:\test\test.txt";
string newExt = ".doc";
System.IO.File.Move(path, System.IO.Path.ChangeExtension(path, newExt));
三、批量重命名
如果需要對文件夾中的所有文件進行重命名,可以使用System.IO.Directory類,使用GetFiles()方法來獲取文件夾中所有文件的完整路徑,並使用System.IO.File.Move()方法逐個重命名。
string dirPath = @"C:\test";
string[] files = System.IO.Directory.GetFiles(dirPath);
foreach(string file in files)
{
string newFileName = System.IO.Path.GetFileName(file).Replace("oldString", "newString");
System.IO.File.Move(file, System.IO.Path.Combine(dirPath, newFileName));
}
代碼中使用GetFiles()方法獲取文件夾中包含的所有文件的完整路徑,並循環遍歷files數組,用Replace()方法修改文件名。最後使用System.IO.Path.Combine()方法將文件夾路徑和新文件名合併,使用System.IO.File.Move()方法重命名文件。
當然,上述代碼中只是將oldString替換為newString,如果需要進行更複雜的批量重命名,使用正則表達式或其他字符串操作方法也可以輕鬆地實現。
四、結語
本文通過詳細的代碼示例,介紹了使用C#修改文件名的基礎語法、文件重命名和批量重命名等內容。讀者可以根據實際需求選擇相應的方法來實現文件重命名,希望本文對大家有所幫助。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/247657.html