我正在使用ColdFusion在MySQL数据库中导入CSV文件,我的代码工作正常,但我有一个问题。我想忽略这些词的双引号。所以我的csv看起来像这样:“John”,“Mark”,“Peter”。每次我在数据库中插入CSV后,我都会在我的文字中加上双引号。 ColdFusion中是否有任何命令可用于防止双引号?我试图使用修剪,但这不起作用。如果您知道任何有用的信息,请告诉我。
答案 0 :(得分:2)
您可以使用cfhttp
将CSV文件读入cfquery对象。例如:
my.csv文件内容:
"forename","surname","id"
"fred","blogs",1000
"jim","smith",2000
然后您可以这样阅读:
<cfhttp url="http://scratch.localhost/my.csv" method="get" name="mydata">
<cfdump var="#mydata#">
mydata将是一个cfquery对象,因此您可以简单地循环它。双引号将被删除,它将如下所示:
FORENAME ID SURNAME
1 fred 1000 blogs
2 jim 2000 smith
如果您这样做,那么您需要通过http提供CSV。在当地的开发环境中,这很好,但不要在生产中这样做。所以我只建议一次性进口(在受限制的环境中),或者无论如何都可以公开访问数据。
否则请使用Adam Cameron's回答。
答案 1 :(得分:1)
循环遍历字段并按以下方式执行操作:
<cfset field = reReplace(field, '^"', '')>
<cfset field = reReplace(field, '"$', '')>
<cfset field = replace(field, '\"', '"', 'ALL')>
这将删除字段中的周围引号和unescape引号。
答案 2 :(得分:-1)