通过搜索 crlf (0d0a) 来计算行数
Count line by searching crlf (0d0a)
我想根据 crlf
(0D0A
) 计数计算文件中的行数。我当前的代码仅根据 cr
(0D
) 计算行数。有人可以给点建议吗?
public static int Countline(string file)
{
var lineCount = 0;
using (var reader = File.OpenText(file))
{
while (reader.ReadLine() != null)
{
lineCount++;
}
}
return lineCount;
}
用法:
Countline("text.txt", "\r\n");
方法:
public static int Countline(string file, string lineSeperator)
{
string text = File.ReadAllText(file);
return System.Text.RegularExpressions.Regex.Matches(text, lineSeperator).Count;
}
string content = System.IO.File.ReadAllText( fileName );
int numMatches = content.Select((c, i) => content.Substring(i)).Count(sub => sub.StartsWith(Environment.NewLine));
请注意,我使用 Environment.NewLine
作为行尾,但如果您愿意,可以替换为整个字符串。
我想根据 crlf
(0D0A
) 计数计算文件中的行数。我当前的代码仅根据 cr
(0D
) 计算行数。有人可以给点建议吗?
public static int Countline(string file)
{
var lineCount = 0;
using (var reader = File.OpenText(file))
{
while (reader.ReadLine() != null)
{
lineCount++;
}
}
return lineCount;
}
用法:
Countline("text.txt", "\r\n");
方法:
public static int Countline(string file, string lineSeperator)
{
string text = File.ReadAllText(file);
return System.Text.RegularExpressions.Regex.Matches(text, lineSeperator).Count;
}
string content = System.IO.File.ReadAllText( fileName );
int numMatches = content.Select((c, i) => content.Substring(i)).Count(sub => sub.StartsWith(Environment.NewLine));
请注意,我使用 Environment.NewLine
作为行尾,但如果您愿意,可以替换为整个字符串。