Warm tip: This article is reproduced from serverfault.com, please click

coldfusion-Cold Fusion 2018:如何将.xlsx文件另存为.csv

(coldfusion - Cold Fusion 2018: how to save .xlsx file as .csv)

发布于 2020-12-15 18:29:48

Win2019上的CF2018想将用户上传的.xlsx文件另存为.csv文件,以处理到Oracle数据库中。运行以下代码,该代码可以正确完成,但结果不清晰:

<cfspreadsheet action = "read"
                format="csv"
                src="c:\bin\Nov_sales.xlsx"
                name="foo"
                > 

<cfspreadsheet action="write" 
                filename='c:\bin\Nov_sales.csv' 
                format="csv" 
                name="foo"  
                overwrite=true>

.csv文件中的结果如下所示:

504b 0304 1400 0808 0800 d260 8f51 0000
0000 0000 0000 0000 0000 0b00 0000 5f72
656c 732f 2e72 656c 73ad 92c1 4a03 3110
865f 25cc bd9b 6d05 1169 da8b 08bd 89d4
.....

我想念什么???

Questioner
epipko
Viewed
11
user12031119 2020-12-16 04:36:27

假设你的excel文件具有标头记录,则首先应将excel文件读入查询对象。从那里,你可以通过使用<cfoutput>循环写入文件将查询对象导出到csv中

<cfspreadsheet action="read" src="c:\bin\Nov_sales.xlsx" query="qryExcel">

<cfoutput query="qryExcel">
    <cfset line = "#col1#,#col2#,#col3#,#col4#,#col5#">
    <cffile action="append" file="c:\bin\Nov_sales.csv" output="#line#">
</cfoutput>