2012-03-20 53 views
3

我沒有將內容寫入.doc文件的問題。我遇到的問題是讓文件在創建後不自動下載到用戶的瀏覽器。我只想在後臺創建.doc文件,然後用戶可以隨時從網頁下載文件。這裏是我正在使用的代碼:使用ColdFusion將內容保存到.DOC文件

<cfheader name="Content-disposition" value="filename=Quote_#arguments.QuoteNumber#_#arguments.Revision#.doc"> 
<cfcontent type="application/msword"> 

<cfoutput>#WordDoc#</cfoutput> 

<cffile action="copy" source="#application.AbsPath#\media\quotes\BlankQuote.doc" destination="#application.AbsPath#\media\quotes\Quote_#arguments.QuoteNumber#_#arguments.Revision#.doc" /> 

<cffile action="write" file="#application.AbsPath#\media\quotes\Quote_#arguments.QuoteNumber#_#arguments.Revision#.doc" output="#WordDoc#" /> 

回答

7

你的問題是<cfheader>標籤...這是什麼觸發了文檔打開。

我會這樣做,而不是。

<cfsavecontent variable="whatever">
<cfoutput>#WordDoc#</cfoutput>
</cfsavecontent>
<cffile action="write" file="#application.AbsPath#\media\quotes\Quote_#arguments.QuoteNumber#_#arguments.Revision#.doc" output="#whatever#" />


+0

其實你可以直接寫'#WordDoc#'變量文件。但同意'cfheader/cfcontent'。只有當文件被下載時才需要它們(例如,誘使瀏覽器認爲它是一個真正的Word文檔。) – Leigh 2012-03-20 22:03:14

+1

哇,真的嗎?我期待着更多的參與,tbh。謝謝你的幫助! – Whatevo 2012-03-20 22:06:04