如何使用 c# 读取 csv 或文本文件,并逐行计算该文件的字符数,如果小于 1500,则显示
本文关键字:文件 字符 如果 显示 1500 小于 逐行 读取 何使用 csv 文本 | 更新日期: 2023-09-27 18:37:24
我想使用 c# 读取 csv 或文本文件并逐行计算该文件的字符数,并在行尾显示字符数小于 1500?我可以数字符总数,但我无法逐行数字符数......对于 C# 专家来说,这可能是一个愚蠢的问题,但我刚刚开始使用 C# 编码,我也想知道成为一名精通 C# 编码人员的最佳方式是什么???
我会使用 LINQ:
var shortLines = File.ReadLines("file.csv")
.Where(line => line.Length < 1500);
foreach (var line in shortLines)
{
// Do whatever you need to
}
请注意,这只会在你迭代shortLines
时读取文件,它会流式传输它 - 但这确实意味着如果你迭代shortLines
两次,它将读取它两次。如果需要多次遍历这些线路,请在 Where
后调用 ToList
。
我接受你的问题的意思是你想知道文档的总字符数在哪一行小于 1500:
string[] lines = File.ReadAllLines("filename.txt");
int count = 0;
int line = 0;
for (; line < lines.Length; line++)
{
count += lines[line].Length;
if (count >= 1500)
{
// previous line is < 1500
Console.WriteLine("Character count < 1500 on line {0}", line - 1);
Console.WriteLine("Line {0}: {1}", line - 1, lines[line - 1]);
break;
}
}
string completeFile = File.ReadAllText("c:'temp'somefile.txt");
string[] arrayOfLines = completeFile.Split(''n');
foreach(string singleLine in arrayOfLines)
{
//count
}