文件操作
3. 读取文件
代码示例与注释
using System.IO; using System.Text; public class FileReadingExample { public string ReadFromFile(string filePath) { string content = string.Empty; // 使用StreamReader读取文本内容 using (StreamReader sr = new StreamReader(filePath, Encoding.UTF8)) { content = sr.ReadToEnd(); Console.WriteLine($"Content read from file '{filePath}': {content}"); } return content; } } // 使用示例 public static class Program { static void Main(string[] args) { var fileReadingExample = new FileReadingExample(); string fileContent = fileReadingExample.ReadFromFile("C:\\Temp\\NewFile.txt"); Console.WriteLine($"Read content: {fileContent}"); } }
using System; using System.IO; public class FileInfoExample { public void DisplayFileInfo(string filePath) { // 获取FileInfo对象 FileInfo fileInfo = new FileInfo(filePath); // 输出文件属性 Console.WriteLine($"File Name: {fileInfo.Name}"); Console.WriteLine($"Full Path: {fileInfo.FullName}"); Console.WriteLine($"Size: {fileInfo.Length} bytes"); Console.WriteLine($"Last Write Time: {fileInfo.LastWriteTime}"); Console.WriteLine($"Exists: {fileInfo.Exists}"); } } // 使用示例 public static class Program { static void Main(string[] args) { var fileInfoExample = new FileInfoExample(); fileInfoExample.DisplayFileInfo("C:\\Temp\\NewFile.txt"); } }
复制
using System.IO; public class FileManagementExample { public void CopyFile(string sourcePath, string destinationPath) { File.Copy(sourcePath, destinationPath, overwrite: true); Console.WriteLine($"File '{sourcePath}' copied to '{destinationPath}'."); } public void MoveFile(string sourcePath, string destinationPath) { File.Move(sourcePath, destinationPath); Console.WriteLine($"File '{sourcePath}' moved to '{destinationPath}'."); } } // 使用示例 public static class Program { static void Main(string[] args) { var fileManagementExample = new FileManagementExample(); fileManagementExample.CopyFile("C:\\Temp\\NewFile.txt", "C:\\Temp\\CopiedFile.txt"); fileManagementExample.MoveFile("C:\\Temp\\CopiedFile.txt", "C:\\Temp\\MovedFile.txt"); } }
文件搜索与遍历
using System; using System.IO; public class DirectoryTraversalExample { public void SearchFiles(string directoryPath, string searchPattern, Action<string> fileFoundAction) { // 遍历指定目录及其子目录,查找匹配搜索模式的文件 foreach (string filePath in Directory.GetFiles(directoryPath, searchPattern, SearchOption.AllDirectories)) { fileFoundAction(filePath); } } } // 使用示例 public static class Program { static void Main(string[] args) { var directoryTraversalExample = new DirectoryTraversalExample(); directoryTraversalExample.SearchFiles( "C:\\Temp", "*.txt", filePath => { Console.WriteLine($"Found file: {filePath}"); // ... 对找到的文件执行其他操作 ... }); } }
异步操作
using System.IO; using System.Threading.Tasks; public class AsyncFileOperationsExample { public async Task WriteAsync(string filePath, string content) { await File.WriteAllTextAsync(filePath, content); Console.WriteLine($"Content written asynchronously to file '{filePath}'."); } public async Task<string> ReadAsync(string filePath) { string content = await File.ReadAllTextAsync(filePath); Console.WriteLine($"Content read asynchronously from file '{filePath}': {content}"); return content; } } // 使用示例 public static class Program { static async Task Main(string[] args) { var asyncFileOperationsExample = new AsyncFileOperationsExample(); await asyncFileOperationsExample.WriteAsync("C:\\Temp\\AsyncFile.txt", "Hello, Async World!"); string asyncFileContent = await asyncFileOperationsExample.ReadAsync("C:\\Temp\\AsyncFile.txt"); Console.WriteLine($"Read async content: {asyncFileContent}"); } }

浙公网安备 33010602011771号