【问题标题】:Issues With PHPmyadmin 3.4.9 Export To CSVPHPmyadmin 3.4.9 导出到 CSV 的问题
【发布时间】:2016-12-15 08:34:46
【问题描述】:

格式特定选项

用: , 分隔的列

用“”括起来的列

转义的列:\

以:AUTO 结尾的行

删除列中的回车/换行符 :ticked

当逗号符号位于列的文本字段中时,由 " (引号) 括起来,它们没有指定转义字符(在这种情况下),因此结果 CSV 文件被错误读取

有问题的字段是长文本,可以包含任何特殊字符,包括换行符(\n)

基本行示例:

XXXX | YYYY | ZZZZ | hi i am bla bla <img src = "blabla.com"> , hihi |

生成的 CSV 示例:

"xxxx", "YYYY", "ZZZZ", "hi i am bla bla <img src = \"blabla.com\">, hihi"

该示例应该清楚地显示问题:包含列的引号中的逗号不会转义并被计为列分隔的逗号

我该如何解决这个问题?

【问题讨论】:

    标签: mysql csv phpmyadmin export-to-csv


    【解决方案1】:

    恕我直言,您误解了转义 CSV 列的规则。当列的文本用双引号引起来时,该文本中允许使用所有字符,但双引号本身除外。因此,无需转义逗号字符。

    你的例子:

    Raw:  hi i am bla bla <img src = "blabla.com">, hihi
    
    Quoted:  "hi i am bla bla <img src = \"blabla.com\">, hihi"
    

    是正确的。读取带有引用列的 CSV 文件比乍看之下更难。事实上,做正确的事情是众所周知的痛苦。聪明的程序员使用完全调试的包来完成。

    【讨论】:

    • 我解决了...这是 CSV 阅读器的问题,而不是文件本身。默认设置忽略转义字符,因此忽略引号符号。谢谢你的答案,你是完全正确的,这比我想象的要难得多。另一个艰难的教训:/
    猜你喜欢
    • 2020-11-08
    • 2014-04-19
    • 1970-01-01
    • 2011-05-08
    • 2015-02-01
    • 2017-09-30
    • 2010-12-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多