csv中每个填充列之后的空白列
Posted
技术标签:
【中文标题】csv中每个填充列之后的空白列【英文标题】:Blank columns after each filled column in csv 【发布时间】:2013-11-25 10:06:07 【问题描述】:在 openoffice 3.3 中的每个填充列之后,我都会得到空白列。 在我的 php 代码中,我提供了 ~~ 作为分隔符和 \n 作为分隔符
我正在使用这个 PHP 代码 header("内容类型:应用程序/csv"); header("内容配置:附件;文件名="dsds.csv"); header("Pragma: no-cache"); header("过期时间:0"); 回声 $filecontent;
我怎样才能摆脱空白列
【问题讨论】:
【参考方案1】:额外空列的最可能原因是,如果您在行尾添加列分隔符,就在换行符之前,如下所示:
column1value~~column2value~~column3value~~\n
而不是正确地省略最后的分隔符,像这样:
column1value~~column2value~~column3value\n
如果每列后面都有一个空格,最可能的原因是 open office 只注册了分隔符中的第一个字符。为了获得最大的兼容性,我建议您使用逗号作为分隔符,并使用双引号将您的字段分隔开,以避免破坏数据中可能出现的逗号:
"column1value","column2value","a value, containing a comma"\n
如果您也担心数据中包含双引号,那么我会进一步建议使用另一个双引号来转义这些引号:
"column1value","column2value","a value containing ""double quotes"""\n
有关详细信息,请参阅 CSV 规范:https://www.rfc-editor.org/rfc/rfc4180
【讨论】:
我在放置换行符之前从末尾删除 ~~ ,它不是空白的一列,在每个填充的列之后都有一个空白,如 A 已填充 B 为空, C 已填充 D 为空 ...因此单行在值列的右侧有一个空白列 尝试使用单个字符作为分隔符(即~
而不是~~
)
单身~可以进入我的数据以上是关于csv中每个填充列之后的空白列的主要内容,如果未能解决你的问题,请参考以下文章