【发布时间】:2013-09-02 04:55:57
【问题描述】:
我在 vs2010 的 C# 项目中使用了一个文本文件。我添加到解决方案并将其“复制输出”设置为“始终复制”。当我使用以下代码时,它会给我前导三个字节或 utf8 一个字节的文本结果。我查看了 windows 资源管理器的文件属性,它的大小显示为 3 个字节。
public static string ReadFile(string fileName)
{
FileStream fs = null;
try
{
fs = new FileStream(fileName, FileMode.Open);
FileInfo fi = new FileInfo(fileName);
byte[] data = new byte[fi.Length];
fs.Read(data, 0, data.Length);
fs.Close();
fs.Dispose();
string text = Encoding.ASCII.GetString(data);
return text;
}
catch (Exception)
{
if(fs != null)
{
fs.Close();
fs.Dispose();
}
return string.Empty;
}
}
为什么会像上面这样?如何在没有 StreamReader 类的情况下读取文本文件?
任何帮助,代码将不胜感激。
【问题讨论】:
-
问题在于如何创建空文本文件。这就是添加这些字节的原因。