首页 文章

正确地逃避CSV中的双引号

提问于
浏览
108

我的CSV中有这样一行:

"Samsung U600 24"","10000003409","1","10000003427"

24 旁边的引号用于表示英寸,而该引号旁边的引号将关闭该字段 . 我正在使用 fgetcsv 读取该行,但解析器出错并将值读取为:

Samsung U600 24",10000003409"

我尝试在英寸引号之前加一个反斜杠,但后来我只是在名字中得到一个反斜杠:

Samsung U600 24\"

有没有办法在CSV中正确地转义它,以便值为 Samsung U600 24" ,还是我必须在处理器中对它进行正则表达式?

2 回答

  • 17

    不仅是双引号,您还需要单引号( ' ),双引号( " ),反斜杠( \ )和NUL(NULL字节) .

    使用fputcsv()进行写入,使用fgetcsv()进行读取,这将完成所有操作 .

  • 194

    使用2个引号:

    "Samsung U600 24"""
    

相关问题