【问题标题】:streamwriter : csv file流写入器:csv 文件
【发布时间】:2013-06-09 09:41:26
【问题描述】:

我使用StreamWriter 将数据写入 csv 文件。当我使用 Excel 打开 csv 文件时,一切都很好,除了一些单元格有井号而不是写入单元格的数据。然而,随着像元大小的增加,这些数据变得可见。有什么办法可以解决哈希(#)符号的问题,而无需手动增加单元格大小。

int cols;
//open file 
//StreamWriter wr = new StreamWriter(@"O:\C_2013_MRO_Software Database\Manpowerdata.csv");
StreamWriter wr = new StreamWriter(@"C:\Manpowerdata.csv");

//determine the number of columns and write columns to file 
var dgvStock = dataGridView3;
cols = dgvStock.Columns.Count;
for (int i = 0; i < cols - 1; i++)
{
    wr.Write(dgvStock.Columns[i].Name.ToString().ToUpper() + ",");
}
wr.WriteLine();

//write rows to excel file
for (int i = 0; i < (dgvStock.Rows.Count - 1); i++)
{
    for (int j = 0; j < cols; j++)
    {
        if (dgvStock.Rows[i].Cells[j].Value != null)
        {
            wr.Write(dgvStock.Rows[i].Cells[j].Value + ",");
        }
        else
        {
            wr.Write(",");
        }
    }
    wr.WriteLine();
}

//close file
wr.Close();

【问题讨论】:

  • 请输入代码?你试过什么?你的意思是#作为井号吗?
  • 我相信有一些格式选项(而不是单元格大小)可以解决这个问题。
  • 我会疯狂地假设 OP 意味着当他们在 Excel 中打开 CSV 文件时,默认的列宽对于该值来说太小了。
  • 那么你的程序输出正确的CSV数据,你导入到Excel中,Excel渲染的很丑?如果是这种情况,那么您的问题在于 Excel,而不是您的 CSV 编写程序。
  • OP 可能无法识别导入 Excel 和直接打开(比如在记事本中)之间的区别。 Excel 使它看起来非常就像你在打开 csv 时打开文件一样。

标签: c# winforms csv .net-4.0


【解决方案1】:

在 MS Excel(和其他电子表格程序)中查看时,will be replaced######## 的单元格中无法容纳的数据。这并不表示有关基础 CSV 数据的任何内容。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-05-13
    • 1970-01-01
    • 2014-01-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多