基于C#編寫一個修改文件時間屬性的小工具
下面是簡鹿辦公一個用 C# 編寫的簡單工具,它可以批量修改文件的創(chuàng)建時間、最后訪問時間和最后修改時間。我們將使用 .NET Framework 或 .NET Core 來實現(xiàn)這個功能。
完整示例代碼
1. 創(chuàng)建一個新的 C# 控制臺應(yīng)用程序
您可以使用 Visual Studio 或 .NET CLI 創(chuàng)建一個新的控制臺應(yīng)用程序。
2. 編寫代碼
打開 Program.cs 文件,并替換其內(nèi)容為以下代碼:
using System; using System.Collections.Generic; using System.IO; using System.Linq; namespace FileTimeModifier { class Program { static void Main(string[] args) { Console.WriteLine("簡鹿批量修改文件時間屬性工具"); // 獲取文件夾路徑 Console.Write("請輸入文件夾路徑: "); string folderPath = Console.ReadLine(); if (string.IsNullOrEmpty(folderPath) || !Directory.Exists(folderPath)) { Console.WriteLine("無效的文件夾路徑。"); return; } // 獲取文件列表 List<string> files = Directory.GetFiles(folderPath).ToList(); if (files.Count == 0) { Console.WriteLine("文件夾中沒有文件。"); return; } // 獲取新的時間 Console.Write("請輸入新的日期和時間 (格式: yyyy-MM-dd HH:mm:ss): "); string dateTimeString = Console.ReadLine(); if (DateTime.TryParse(dateTimeString, out DateTime newDateTime)) { foreach (string file in files) { try { // 修改文件的時間屬性 File.SetCreationTime(file, newDateTime); File.SetLastAccessTime(file, newDateTime); File.SetLastWriteTime(file, newDateTime); Console.WriteLine($"已修改文件 {file} 的時間屬性。"); } catch (Exception ex) { Console.WriteLine($"修改文件 {file} 的時間屬性時發(fā)生錯誤: {ex.Message}"); } } } else { Console.WriteLine("無效的日期和時間格式。"); } Console.WriteLine("按任意鍵退出..."); Console.ReadKey(); } } }
代碼說明
獲取文件夾路徑:
用戶輸入文件夾路徑,程序會檢查路徑是否存在。
獲取文件列表:
使用 Directory.GetFiles 方法獲取文件夾中的所有文件。
獲取新的時間:
用戶輸入新的日期和時間,程序會檢查輸入的格式是否正確。
修改文件時間屬性:
使用 File.SetCreationTime、File.SetLastAccessTime 和 File.SetLastWriteTime 方法分別設(shè)置文件的創(chuàng)建時間、最后訪問時間和最后修改時間。
異常處理:
捕獲并處理可能出現(xiàn)的異常,確保程序的健壯性。
示例運行
假設(shè)您有一個文件夾 C:\TestFolder,里面有一些文件。運行程序后,輸入文件夾路徑 C:\TestFolder 和新的日期時間 2023-10-01 12:00:00,程序?qū)⑴啃薷脑撐募A中所有文件的時間屬性。
當然,如果你覺得自己編寫比較費勁,也可以搜索使用簡鹿文件批量重命名工具,該軟件支持 Windows 和 Mac 系統(tǒng),使用起來更方便快捷。
到此這篇關(guān)于基于C#編寫一個修改文件時間屬性的小工具的文章就介紹到這了,更多相關(guān)C#修改文件時間內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C#實現(xiàn)的ACCESS數(shù)據(jù)庫操作類完整實例
這篇文章主要介紹了C#實現(xiàn)的ACCESS數(shù)據(jù)庫操作類,結(jié)合完整實例形式分析了C#針對access數(shù)據(jù)庫增刪改查、事務(wù)、結(jié)果處理等相關(guān)操作技巧,需要的朋友可以參考下2017-05-05c#解析jobject的數(shù)據(jù)結(jié)構(gòu)
這篇文章介紹了c#解析jobject數(shù)據(jù)結(jié)構(gòu)的方法,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-07-07