【问题标题】:Postgresql: CSV export with escaped linebreaksPostgresql:带有转义换行符的 CSV 导出
【发布时间】:2013-09-02 00:39:56
【问题描述】:

我使用(所有)此处发布的说明从 postgresql 数据库中导出了一些数据:Save PL/pgSQL output from PostgreSQL to a CSV file

但是一些导出的字段包含换行符(换行符),所以我得到了一个 CSV 文件,例如:

header1;header2;header3
foobar;some value;other value
just another value;f*** value;value with
newline
nextvalue;nextvalue2;nextvalue3

如何转义(或忽略)这些换行符?

【问题讨论】:

    标签: postgresql csv export-to-csv


    【解决方案1】:

    如果包含换行符的字段用双引号括起来,则 CSV 支持换行符。

    所以如果你在文件中间有这个:

    只是另一个值;f*** 值;“值与 新队”

    它将被视为 1 行数据分布在具有 3 个字段的 2 行上,并且可以正常工作。

    另一方面,没有双引号,它是一个无效的 CSV 文件(当它宣传 3 个字段时)。

    虽然 CSV 格式没有正式规范,但您可以查看RFC 4180 了解通常适用的规则。

    【讨论】:

    • 谢谢。你说的对。问题不是 CSV 导出,而是 Excel 中的导入。使用 libreoffice 可以导入文件。
    猜你喜欢
    • 2018-09-04
    • 1970-01-01
    • 2011-01-09
    • 1970-01-01
    • 2021-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-25
    相关资源
    最近更新 更多