首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >利用csvToArray和循环实现coldfusion的结果

利用csvToArray和循环实现coldfusion的结果
EN

Stack Overflow用户
提问于 2014-11-20 11:54:33
回答 2查看 1.2K关注 0票数 1

我正在使用从本·纳德尔获得的一些代码

我添加了一些代码来使用我的.csv文件

代码语言:javascript
复制
<cffile action="READ" file="C:/ColdFusion10/cfusion/wwwroot/kelly2/debitorders.csv" variable="FileContent" result="csvfileupload">
<cfset CSVArray = FileContent>

<cfdump var="#CSVArray#">

<cfsavecontent variable="csv">
csvfileupload
</cfsavecontent>

<!--- Parse the test data. --->
<cfset result = csvToArray(
csv = trim( CSVArray )
) />

<!--- Output the results. --->
<cfdump
var="#result#"
label="Array 1"
/>

但是,当我使用

代码语言:javascript
复制
<cfloop array="#result#" index="i">
<cfoutput>#i#</cfoutput>
</cfloop>

我得到以下错误:

“复杂对象类型不能转换为简单值。 表达式请求变量或中间表达式结果为简单值。但是,不能将结果转换为简单值。简单值是字符串、数字、布尔值和日期/时间值。查询、数组和COM对象是复杂值的示例。“

我还想知道如何引用每一项及其列,不确定我的术语是否有任何意义。

我的最终目标是遍历csv并逐行读取它,根据行中的变量排序数据,然后将其写入新的.txt文件。请告诉我,如果我在正确的轨道上,或者应该做一些不同的事情。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-11-20 13:14:06

csvToArray返回一个2D数组,可以在Ben的文章截图中清楚地看到,他的注释“我们将创建一个数组数组,其中每个嵌套数组代表CSV数据文件中的一行”。

如果要访问每个单独的值,则需要一个内部循环。

代码语言:javascript
复制
<cfloop array="#result#" index="i">
    <cfloop array="#i#" index="j">
        <cfoutput>#j#</cfoutput>
    </cfloop>
</cfloop>
票数 4
EN

Stack Overflow用户

发布于 2014-11-20 13:10:48

那么,i的价值是什么?你查过了吗?如果你说了你就不会这么说了。

它很可能是一个结构或其他复杂的数据类型,不能简单地输出(错误就是这么说的)。

使用<cfdump>检查i的值,然后根据它包含的内容适当地处理它。在没有你提供信息的情况下,要说出更多的话是很棘手的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27038978

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档