我正在将文本文件读入程序(它们是Unicode中的代码,输出必须是utf-8)。下面的代码适用于较小的代码(约150行,其中行只有一个字),但是当我在较大的文件上使用它时(例如20.000行,仍然只有一行代码),程序需要半分钟完成任务。我应该写新的代码,还是有一种方法来优化?非常慢的StreamReader用于中等大小的文件。
int next;
string storage = "";
using (StreamReader sr = new StreamReader(path))
{
while((next = sr.Read()) != -1)
{
storage += Char.ConvertFromUtf32(next);
}
sr.Close();
}
是:StreamReader.ReadToEnd()。请参阅https://msdn.microsoft.com/en-us/library/system.io.streamreader.readtoend(v=vs.110).aspx – 2015-02-24 07:37:26
我使用新的sr(path,Encoding.Unicode),然后收到不仅仅是int通过99999999提高了复杂度。感谢球员们的答案,请关闭这个线程。 – Offa 2015-02-24 07:43:24
使用Filehelpers.net http://filehelpers.sourceforge.net/ – Amit 2015-02-24 07:54:23