You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

统计包含特定单词uniqueId的文本文件行数异常排查

问题分析与解决

原代码的核心问题是逻辑完全偏离需求:

  • ReadLine()已经读取了不含换行符的单行内容,你再用换行符分割这行内容,得到的还是原行本身,根本拆不出单独的"uniqueId"字符串,所以SingleOrDefault永远返回null,累加结果自然为0。
  • 就算你想统计"uniqueId"的出现次数,当前的分割方式也完全错误——用换行符分割没法把"uniqueId"从JSON串里拆分出来。

如果你要统计包含"uniqueId"的行数

直接判断每行是否包含目标字符串即可,代码简化如下:

var total = 0;
using (StreamReader sr = new StreamReader(fi.FullName))
{
    while (!sr.EndOfStream)
    {
        string line = sr.ReadLine();
        if (!string.IsNullOrEmpty(line) && line.Contains("uniqueId"))
        {
            total++;
        }
    }
}

如果你要统计"uniqueId"的总出现次数(比如某行可能多次出现)

可以用正则匹配统计每行的出现次数再累加:

var total = 0;
using (StreamReader sr = new StreamReader(fi.FullName))
{
    while (!sr.EndOfStream)
    {
        string line = sr.ReadLine();
        if (!string.IsNullOrEmpty(line))
        {
            total += System.Text.RegularExpressions.Regex.Matches(line, "uniqueId").Count;
        }
    }
}

内容的提问来源于stack exchange,提问作者NoBullMan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 16:35:19