感謝您的提示和Ben Nadel的QueryToCSV解決方案,我現在可以從我的查詢中生成CSV文件。不過,我想讓用戶選擇保存生成文件的位置。該文件指出:Coldfusion - 允許用戶選擇保存生成的csv文件的位置
下面的標籤可以迫使大多數瀏覽器顯示,要求用戶 是否要保存使用文件名cfcontent標籤 指定的文件由filename指定內容的對話框值。如果用戶選擇打開 該文件,則大多數瀏覽器在相關應用程序中打開文件,而不是瀏覽器 窗口。
<cfheader name="Content-Disposition" value="attachment; filename=filename.ext">
這適用於PDF文件,但我不能使它與CSV文件。目前,我第一次寫文件到一個臨時文件,然後調用cfcontent,然後cfheader:
<cffile
action="WRITE"
file="#filename#"
output="#CSVString#"
/>
<cfcontent file="#filename#" type="text/plain" >
<cfheader name="Content-Disposition" value="attachment; filename=#filename#">
這個工程將文件寫入到臨時目錄,然後在瀏覽器窗口;但我無法弄清楚如何讓用戶選擇保存位置。
D'oh - 不知道這是一個選項 - ColdFusion Builder沒有列出它,並沒有在文檔中看到它。這確實給了我一個提示,但我無法選擇保存位置或命名文件 - 我的選項是「用[選擇]打開」,「保存文件」和「取消」。沒有其他選擇。 – earachefl
這是一個瀏覽器設置 - 您需要找到與下載相關的選項,並將其設置爲「每次詢問我」(或類似),然後使用「保存文件」選項可讓您執行此操作。 –
啊,我腦部凍結了。知道可用的MIME類型(而不是依賴於CF生成器)證明是有幫助的:http://www.iana.org/assignments/media-types/text/index.html – earachefl