将数据输出到CSV文件

时间:2015-10-19 19:34:01

标签: c# csv

我搜索如何使用c#将数据输出到csv文件中,在csv中我需要4列,但现在所有数据都写在一列中。到目前为止我所做的是:

 var first = barcode[i];
 var second = a2;
 var third = a4;
 var fourth = a6;
 var line = string.Format("{0}{1}{2}{3}", first, second, third, fourth);
 stream.WriteLine(line);

我得到了这个结果: enter image description here

我需要这个: enter image description here

也许有人知道怎么做?

编辑: 如果我使用逗号,我会得到: enter image description here

完成: 我发现了我的错误,我需要在列之间添加一个分号,我得到了我需要的东西:

var line = string.Format("{0};{1};{2};{3}", first, second, third, fourth);

1 个答案:

答案 0 :(得分:0)

var line = string.Format("{0}{1}{2}{3}", first, second, third,
fourth);

没有分隔符。尝试这样的事情:

var line = string.Format("{0},{1},{2},{3}", first, second, third, fourth);

CSV通常代表"逗号分隔值"其中的想法是使用该标点符号作为分隔符,以便知道哪个数据是哪个列。

如果您想保留现有代码,其他常见的分隔符将是另一个想法的分号。

如果您想要Excel输出,请考虑代码 http://csharp.net-informations.com/excel/csharp-format-excel.htm使用Interop更好地解释数据。代码的一部分是:

        xlApp = new Excel.Application();
        xlWorkBook = xlApp.Workbooks.Add(misValue);
        xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);

        //add data 
        xlWorkSheet.Cells[4, 2] = "";
        xlWorkSheet.Cells[4, 3] = "Student1";
        xlWorkSheet.Cells[4, 4] = "Student2";
        xlWorkSheet.Cells[4, 5] = "Student3";