向coldfusion电子表格添加一行的函数是SpreadsheetAddrow
,它接受数据为“以逗号分隔的单元格条目列表,每列一个。”
我的一些数据中有逗号。如何在不转义列表中的逗号的情况下转义数据中的逗号?
我目前正在创建一个包含行内容的数组,然后将其转换为列表以添加到电子表格中:
<cfset row = ArrayNew(1)>
<cfloop list="#structKeyList(setRecord.columns)#" index="key">
<cfset ArrayAppend(row, "#Evaluate(key)#")>
</cfloop>
<cfset spreadsheetAddRow(xlsObj, "#ArrayToList(row)#")>
最佳答案
看起来像 ability to specify a different delimiter尚不支持。由于您已经在循环,您不妨跳过数组并使用 SpreadsheetSetCellValue反而。您也应该能够消除评估()。
<cfset cols = structKeyArray(yourStruct) >
<cfloop from="1" to="#arrayLen(cols)#" index="c">
<cfset SpreadsheetSetCellValue(xlsObj, yourStruct[ cols[c] ], lastRow, c)>
</cfloop>
<cfset lastRow++>
...
更新:但是,如果基础对象是查询而不是结构,则使用 CfSimplicity 的 SpreadSheetAddRows
建议更有效。
关于list - cfspreadsheet 在逗号分隔的行插入中转义逗号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6727364/