C#选择多个文件并读取多个文件数据

本文介绍如何使用C#语言实现从文件管理器中选择多个TXT文件,并逐一读取这些文件的内容。通过设置OpenFileDialog组件的Multiselect属性为true,用户可选择多个文件;再利用StreamReader对象遍历读取每个文件的每一行数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原文: C#选择多个文件并读取多个文件数据

版权声明:本文为博主原创文章,转载请附上链接地址。 https://blog.youkuaiyun.com/ld15102891672/article/details/80586097

在编程工作中有时候会涉及到在文件管理器中选择多个文件,点击确定后程序可以依次读取所选文件里面的数据,那么该怎么实现呢?小博也是查阅了不少资料才获得的经验,下面小博以C#语言为例,附上一次读取多个文件的主要代码:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.IO;
using System.Windows.Forms;
namespace ...
{
Class ...
{
 private void button1_Click(object sender, EventArgs e)
        {
            OpenFileDialog dlg = new OpenFileDialog();
            dlg.Multiselect = true;//等于true表示可以选择多个文件
            dlg.DefaultExt = ".txt";
            dlg.Filter = "记事本文件|*.txt";
            if (dlg.ShowDialog()==DialogResult.OK)
            {

                foreach (string file in dlg.FileNames)
                {
                    StreamReader sr = new StreamReader(file);
                    string line;
                    while ((line = sr.ReadLine()) != null)
                    {
                      //在此处添加需要对文件中每一行数据进行处理的代码
                    }
                    sr.Close();
                }
                
            }
        }
}

}

C#读取多个txt文件计算,通常是指从这些文本文件读取数据,然后进行某种形式的数学计算,比如求和、平均值等。以下是使用C#实现这一功能的基本步骤: 1. **确定文件读取方式**:首先,你需要确定是从文件的特定位置读取数据,还是需要遍历整个文件内容。对于文本文件,可以使用`System.IO`命名空间下的`File`类来读取文件内容。 2. **读取文件内容**:使用`File.ReadAllText`方法读取整个文件的内容,或者使用`File.ReadAllLines`方法以行为单位读取文件内容,这取决于数据的格式和大小。 3. **数据处理**:读取文件内容后,需要解析数据以进行计算。这可能涉及到字符串分割、转换数据类型等。 4. **执行计算**:根据需要执行的计算类型,编写相应的逻辑来处理解析后的数据。例如,如果是求和,就需要遍历数据累加。 5. **结果输出**:计算完成后,根据需要输出结果,可能是保存到文件、控制台输出或其他形式。 下面是一个简单的示例代码,展示了如何读取多个txt文件计算它们的内容总和(假设每个文件中的内容都是可解析为整数的数字): ```csharp using System; using System.Collections.Generic; using System.IO; using System.Linq; class Program { static void Main() { // 假设文件都存储在一个文件夹中 string folderPath = @"C:\path\to\your\txtfiles"; string[] files = Directory.GetFiles(folderPath, "*.txt"); List<int> numbers = new List<int>(); foreach (string file in files) { // 读取文件内容 string[] lines = File.ReadAllLines(file); foreach (string line in lines) { // 尝试将每行内容转换为整数,添加到列表中 if (int.TryParse(line, out int number)) { numbers.Add(number); } } } // 计算总和 int sum = numbers.Sum(); // 输出结果 Console.WriteLine($"总和为: {sum}"); // 可以将结果保存到文件或执行其他操作 } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值