C# 在.NET4中没有System.IO.File.ReadLines(File.Count()?
我正在尝试读取文件的行数C# 在.NET4中没有System.IO.File.ReadLines(File.Count()?,c#,C#,我正在尝试读取文件的行数 我在这里发现(stackoverflow),读取大文件中行数的最佳方法是使用以下代码: int count = System.IO.File.ReadLines(file).Count(); 然而,我不能让它编译。有人知道问题出在哪里吗 错误5“System.Collections.Generic.IEnumerable”不存在 包含“Count”的定义,不包含扩展方法“Count” 接受类型为的第一个参数 可以找到“System.Collections.Generi
我在这里发现(stackoverflow),读取大文件中行数的最佳方法是使用以下代码:
int count = System.IO.File.ReadLines(file).Count();
然而,我不能让它编译。有人知道问题出在哪里吗
错误5“System.Collections.Generic.IEnumerable”不存在
包含“Count”的定义,不包含扩展方法“Count”
接受类型为的第一个参数
可以找到“System.Collections.Generic.IEnumerable”(是
是否缺少using指令或程序集引用?)
谢谢,
Eyal您能做些什么:
int count = File.ReadAllLines(@"C:\filepath\file.txt").Length;
编辑:正如评论中指出的,这可能(将)对大文件执行得很糟糕。对于更详细解释原因的类似问题,view
Count()
是IEnumerable
对象的扩展方法。尝试使用语句为命名空间系统添加。Linq
这是从文本文件读取的窗口应用程序中的行数:
int linecount = System.IO.File.ReadAllLines(@"D:\yfile.txt").Length;
MessageBox.Show(linecount != null && (!string.IsNullOrEmpty(linecount.ToString())) ? linecount.ToString() : "Unable To Count");
你有使用System.Linq的代码吗
在文件顶部?您必须使用foreach
AFAIK@dlev-这就是问题所在。我添加了“system.linq”,现在就可以了。感谢“读取大文件中的行数”,如果您执行了ReadAllLines
,则需要将整个文件临时存储在ram中<代码>读取行
只需要存储当前行。这一点很好。对于大文件,这将是非常低效的。我已经更新了我的答案,以链接到一个类似的问题。这是从文本文件读取的窗口应用程序中的行数