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

如何读取文本文件中的数字,在列表框展示并实现统计与求和?

实现读取数字文件并展示、统计的功能

你的需求很明确,我帮你完善了代码,解决读取数字到ListBox、统计总数和求和的问题,来看下完整实现:

完整代码

private void readFileButton_Click(object sender, EventArgs e)
{
    try
    {
        // 打开文件选择对话框,确认用户选择了文件
        if (openFileDialog1.ShowDialog() == DialogResult.OK)
        {
            string filePathReader = openFileDialog1.FileName;
            string numbersFromFile;
            int totalCount = 0;
            double totalSum = 0; // 用double适配更多数字类型,也可根据需求换成int

            // 用using包裹StreamReader,自动释放文件资源
            using (StreamReader infile = File.OpenText(filePathReader))
            {
                // 清空ListBox,避免重复加载旧数据
                listBoxNumbers.Items.Clear();

                while (!infile.EndOfStream)
                {
                    numbersFromFile = infile.ReadLine().Trim(); // 读取行并去除首尾空白字符

                    // 尝试转换为数字,避免非数字行导致崩溃
                    if (double.TryParse(numbersFromFile, out double number))
                    {
                        // 将有效数字添加到ListBox展示
                        listBoxNumbers.Items.Add(number.ToString());
                        // 更新统计数据
                        totalCount++;
                        totalSum += number;
                    }
                    else
                    {
                        // 可选:对非数字行给出提示,也可以直接跳过
                        MessageBox.Show($"行内容「{numbersFromFile}」不是有效数字,已跳过");
                    }
                }
            }

            // 弹出统计结果,也可以用Label控件展示在界面上
            MessageBox.Show($"统计完成:\n数字总数:{totalCount}\n数字总和:{totalSum:F2}");
        }
    }
    catch (Exception ex)
    {
        // 捕获异常并给出友好提示
        MessageBox.Show($"读取文件时出错:{ex.Message}");
    }
}

关键细节说明

  • 文件选择校验:增加了DialogResult.OK判断,避免用户取消选择文件时程序执行后续逻辑出错
  • 资源安全处理:用using语句管理StreamReader,确保文件流自动关闭,不会造成资源泄漏
  • 数字转换容错:使用double.TryParse做安全转换,遇到非数字内容时不会崩溃,还能给出提示
  • 统计逻辑集成:初始化计数和求和变量,每读取一个有效数字就同步更新统计值
  • 界面体验优化:加载前清空ListBox,避免多次加载后数据重复堆积

这样就能同时满足你提出的两个需求啦~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 07:35:00