C#StreamReader读取中文格式乱码
时间: 2023-09-11 21:06:52 浏览: 300
C#读取中文文件出现乱码的解决方法
在使用 C# 的 StreamReader 读取中文文件时出现乱码,可能是因为编码格式不匹配导致的。可以尝试指定正确的编码格式来解决这个问题。
例如,如果你的文件编码格式为 UTF-8,可以使用以下代码来读取:
```
using (StreamReader reader = new StreamReader("filename.txt", Encoding.UTF8))
{
string line;
while ((line = reader.ReadLine()) != null)
{
// 处理每一行数据
}
}
```
如果你不确定文件的编码格式,可以尝试使用 Encoding.Default 或者自动检测编码格式的方法来读取:
```
using (StreamReader reader = new StreamReader("filename.txt", Encoding.Default, true))
{
string line;
while ((line = reader.ReadLine()) != null)
{
// 处理每一行数据
}
}
```
在这个方法中,第二个参数使用 Encoding.Default 表示使用系统默认的编码格式。第三个参数为 true 表示自动检测编码格式。在读取过程中,StreamReader 会自动判断文件的编码格式,并使用正确的编码格式进行解码。
阅读全文