在要导入到Excel的单元格中带有换行符的CSV字段

时间:2012-08-30 07:00:44

标签: excel csv import

我的CSV文件中的数据存在问题,无法导入Excel。

我已从网站解析数据,并包含换行符<br>,我将此标记转换为"\n"并写入CSV文件。但是,当我将此CSV文件导入Excel时,换行符显示不正确。它将新行作为新行而不是单个单元格中的新行。 以前有人遇到过这个问题吗?真的很感激你的建议。

谢谢!

Edit:这里是展示我情况的样本

static void TestLine()
{
    string sampleData = "日찬양 까페에 올린 충격적인 <br>글코리아타임스";
    string formattedData = sampleData.Replace("<br>", "\n");
    using (StreamWriter writer = new StreamWriter(@"C:\SampleData.csv", false, Encoding.Unicode))
    {
        writer.WriteLine(formattedData);
    }
}

我想在单元格中显示sampleData,但结果发生在2个单元格中。

2 个答案:

答案 0 :(得分:0)

它在我看来像是格式错误的CSV文件。要正确处理这种情况,您需要在引号中包含换行符的字段。

样本后更新:

这很好用:

static void Main(string[] args)
{
    string sampleData = "\"日찬양 까페에 올린 충격적인 <br>글코리아타임스\"";
    string formattedData = sampleData.Replace("<br>", "\n");
    using (StreamWriter writer = new StreamWriter(@"C:\SampleData.csv", false, Encoding.Unicode))
    {
        writer.WriteLine(formattedData);
    }

}

您需要将该字段包装在引号(“)

答案 1 :(得分:0)

请查看CSV-1203 File Format Specification,特别是“记录结束标记”和“现场有效负载保护”部分。希望这应该为CSV文件格式的内部工作提供明确的指导。