为了账号安全,请及时绑定邮箱和手机立即绑定

如何在c#中读取列表中多个csv文件的内容

如何在c#中读取列表中多个csv文件的内容

C#
梵蒂冈之花 2023-07-09 17:58:26
我想读取列表中多个 csv 文件的内容,并使用此列表来拆分 datagridview 中的内容。问题是,使用这段代码我只能获取文件名,但不能获取文件的内容。如何阅读内容?下面你可以看到代码。public List<string> GetFileList(string strFilePath, bool SubFolders){    List<string> FileArray = new List<string>();    var fileContent = string.Empty;    var filePath = string.Empty;    using (OpenFileDialog openFileDialog = new OpenFileDialog())    {        openFileDialog.InitialDirectory = "C:\\Users\\blabla\\Desktop\\folder\\files";        openFileDialog.Filter = "csv files (*.csv)|*.csv|All files (*.*)|*.*";        openFileDialog.FilterIndex = 2;        openFileDialog.RestoreDirectory = true;        openFileDialog.Multiselect = true;        if (openFileDialog.ShowDialog() == DialogResult.OK)        {            try            {                string[] Files = System.IO.Directory.GetFiles(strFilePath);                string[] Folders = System.IO.Directory.GetDirectories(strFilePath);                for (int i = 0; i < Files.Length; i++)                {                    FileArray.Add(Files[i].ToString());                }                if (SubFolders == true)                {                    for (int i = 0; i < Files.Length; i++)                    {                        FileArray.AddRange(GetFileList(Folders[i], SubFolders));                    }                }            }            catch (Exception Ex)            {                throw (Ex);            }            return FileArray;        }        return FileArray;    }}我希望将 FileArray 中的内容用于 datagridview,但我只获取文件名。非常感谢您的帮助!
查看完整描述

2 回答

?
波斯汪

TA贡献1811条经验 获得超4个赞

您只获得文件名,因为您只读取文件名:)

你需要使用

string[] lines = System.IO.File.ReadAllLines(Files[i].ToString());
FileArray.AddRange(lines)

在你的程序中。

MSDN 指出:

系统.IO.目录.GetFiles

返回满足条件的文件名

指定的标准。

因此,您需要打开每个文件,读取其中的所有内容并将其添加到返回变量中。


查看完整回答
反对 回复 2023-07-09
?
白衣非少年

TA贡献1155条经验 获得超0个赞

您可以导入命名空间 Microsoft.VisualBasic.FileIO 吗?如果是,那么您可能会查看 TextFieldParser 类。这是一个非常舒适的类,可以导入 CSV 文件并逐行读取它们。然后,您可以在循环中用相应的数据填充目标集合。



查看完整回答
反对 回复 2023-07-09
  • 2 回答
  • 0 关注
  • 167 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信