gpt4 book ai didi

c# - 使用 C# 将 CSV 文件读入数组

转载 作者:行者123 更新时间:2023-12-02 19:36:53 24 4
gpt4 key购买 nike

我正在尝试编写代码来引入、读取和分离 csv 文件。它有四列,没有标题。我已经在网上搜索了几个小时,但似乎没有人真正找到答案,所以我希望这里有人可以。读入后,我需要能够非常具体地拉出它,因为它是设计的一部分。提前致谢!

最佳答案

您的问题有点模糊,但我会尽力回答。

CSV 文件(根据定义)是包含逗号分隔值的文件 - 这里的关键是使用逗号作为分隔符。就我个人而言,我发现在解析时使用不同的分隔符往往不会那么麻烦。

我创建了以下测试 CSV 文件:

Column1,Column2,Column3,Column4
Row1Value1,Row1Value2,Row1Value3,Row1Value4
Row2Value1,Row2Value2,Row2Value3,Row2Value4
Row3Value1,Row3Value2,Row3Value3,Row3Value4
Row4Value1,Row4Value2,Row4Value3,Row4Value4
Row5Value1,Row5Value2,Row5Value3,Row5Value4

下面是一些代码,用于将该文件读入一些简单的结构,然后您可以对其进行操作。您可能希望通过为列和行(以及值)创建类来扩展此代码。

        string sFileContents = "";

using (StreamReader oStreamReader = new StreamReader(File.OpenRead("Test.csv")))
{
sFileContents = oStreamReader.ReadToEnd();
}

List<string[]> oCsvList = new List<string[]>();

string[] sFileLines = sFileContents.Split(Environment.NewLine.ToCharArray(), StringSplitOptions.RemoveEmptyEntries);
foreach (string sFileLine in sFileLines)
{
oCsvList.Add(sFileLine.Split(",".ToCharArray(), StringSplitOptions.RemoveEmptyEntries));
}

int iColumnNumber = 0;
int iRowNumber = 0;

Console.WriteLine("Column{0}, Row{1} = \"{2}\"", iColumnNumber, iRowNumber, oCsvList[iColumnNumber][iRowNumber]);

iColumnNumber = 4;
iRowNumber = 2;

Console.WriteLine("Column{0}, Row{1} = \"{2}\"", iColumnNumber, iRowNumber, oCsvList[iColumnNumber][iRowNumber]);

请记住,值是通过列号访问的,然后是行号。

我希望这会有所帮助。

关于c# - 使用 C# 将 CSV 文件读入数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12102804/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com