tca*_*les 4 c# file-io text filestream
我似乎在C#中遇到了一些文件流问题.我试图读取由MSI安装程序生成的非常大的文本文件10mb的最后一行.
我使用的代码是:
string path = @"C:\uninstall.log";
byte[] buffer = new byte[100];
using (FileStream fs = new FileStream(path, FileMode.Open, FileAccess.Read))
{
long len = fs.Length;
fs.Seek(-100, SeekOrigin.End);
fs.Read(buffer, 0, 100);
}
string foo = Encoding.UTF8.GetString(buffer);
Console.WriteLine("\"" + foo + "\"");
Run Code Online (Sandbox Code Playgroud)
但输出看起来与此类似:
H E L L O W O R L D ! ! ! B L A H B L A H
Run Code Online (Sandbox Code Playgroud)
显然,读取的流包含每个其他字符的'\ 0'(空)字符.有谁知道是什么原因造成的?
请改用Encoding.UnicodeEncoding.您的文件以UTF-16编码,而不是UTF-8.
| 归档时间: |
|
| 查看次数: |
2409 次 |
| 最近记录: |