c# - 是否需要创建多个streamreader实例来读取多个文件?

标签 c# performance file streamreader

我想使用流读取器将多个文件的文本读取到字符串中,但截至目前,每次我想读取不同的文件时,我的代码都会创建一个新的流读取器。这是有效的,尽管重复数百次后,它似乎效率很低。我确信这是一个非常简单的修复,但我对编程仍然很陌生,所以如果有一点知识将不胜感激。

我想避免的低效代码的示例:

someloop
{

    using (StreamReader sR = new StreamReader(changingfilename))
    {
      textString = sR.ReadToEnd();

    }

}

最佳答案

从磁盘读取相对非常慢。 StreamReader 的实例化在比较中可以忽略不计。慢的部分是 ReadToEnd(),而不是 new StreamReader()。如果您的代码太慢,请尽量避免从磁盘读取。

某些版本的 Visual Studio 附带一个分析器,它会准确地告诉您哪些方法正在消耗程序的 cpu/时钟时间

关于c# - 是否需要创建多个streamreader实例来读取多个文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11183474/

相关文章:

c# - .NET MVC 脚本反复用于删除 SQL Server 数据库以防止数据库连接

c# - File.Copy 与手动 FileStream.Write 用于复制文件

mysql - 以下 SQL 查询是否有效?

c - 将文本基本传输到 C 中的结构程序。为什么我总是得到奇怪的输出?

mysql - Groovy:解析具有特定扩展名的文件以导入 MySQL,然后将其重命名为 *.bak

c# - 在堆栈跟踪中打印参数值

c# - C# 程序员更好的网络抓取选项(HTMLAgilityPack 或 Python+beautifulsoup)

c# - 在 Visual Studio 2010 中将项目添加到项目

python - 从 WebSocket 提取数据的最快方法

python - pickle - 在文件中放置超过 1 个对象?