C#文件操作实战:创建、删除与读取详解

需积分: 10 2 下载量 85 浏览量 更新于2024-07-24 收藏 536KB PDF 举报
"C#文件操作详解" 在C#编程中,文件操作是一项基本且常见的任务,本文档详细介绍了如何使用C#语言进行文件和文件夹的操作。以下是一些关键知识点: 1. **创建文件夹**:使用`System.IO`命名空间中的`Directory.CreateDirectory()`方法可以动态创建一个新的文件夹,如`Directory.CreateDirectory(@"路径\%1");`。这个函数会在指定的路径下创建一个新目录,如果路径不存在则会自动创建。 2. **创建文件**:通过`File.Create()`方法创建一个空文件,如`File.Create(@"路径\%1");`。这个函数会在指定路径生成一个文件,但不会创建目录。 3. **删除文件**:`File.Delete()`用于删除指定的文件,例如`File.Delete(@"路径\%1");`。注意删除操作是不可逆的,所以在执行前确保文件不再被其他进程使用。 4. **删除文件夹**:使用`Directory.Delete()`删除整个文件夹及其内容,`Directory.Delete(@"路径\%1", true);`中的第二个参数为是否递归删除子文件夹。设置为`true`表示删除整个树形结构。 5. **删除目录下所有文件夹**:通过遍历目录下的所有文件和子目录,逐个删除它们。代码中使用`Directory.GetDirectories()`获取子目录列表,然后递归地删除每个子目录。 6. **清空文件夹**:先调用`Directory.Delete()`删除文件夹内的所有文件,再使用`Directory.CreateDirectory()`重新创建空文件夹,以实现清空效果。 7. **读取文件**: - **操作系统默认编码**:使用`File.OpenText()`打开文件并读取,如`StreamReader s = File.OpenText(@"路径\%1");`,然后逐行读取内容。 - **UTF-8编码**:如果需要处理非ASCII字符,可以指定`Encoding.UTF8`,如`StreamReader srfile = new StreamReader(@"路径\%1", Encoding.UTF8)`,以确保正确解析。 - **分块读取**:`StreamReader.ReadLine()`一次读取一行,若需一次性读取文件内容,可以考虑一次性读取到字符串数组或流中,如`byte[] buffer = new byte[1024];`,`FileStream fileStream = File.Open(@"路径\%1", FileMode.Open, FileAccess.Read)`,然后循环读取。 以上知识点涵盖了C#中基本的文件操作,包括文件夹的创建、删除、读取和编码选择。在实际开发中,还需要根据具体需求进行错误处理和性能优化,确保代码的健壮性和可维护性。