2010-10-05 42 views
0

使用asp.net 3.5我想生成的EXCEL表格 和我做的方式是:導出到Excel使用Response.TransmitFile()

1.Format的excel表與數據 2將它保存爲xml文件夾 3.在記事本/文本板中查看它,並從xml中刪除「數據」並擁有一個內容保存程序 ,例如「DYNAMICDATA」 4.爲數據構建動態xml並替換「DYNAMICDATA」把這個新數據放在持有人的頭上 本打算過所有一個StringBuilder

我米困在這裏,我希望能夠到的Response.Write(StringBuilder)對 ,但它不工作,我已經使用了適當的MIME類型等

然而Response.TransmitFile()在我向瀏覽器發送一個xml電子表格時起作用。 但Response.TransmitFile()接受一個文件作爲參數,我可以創建一個臨時文件寫入創建的XML然後傳輸,但這看起來像一個沉重的開銷。

有沒有一種方法可以不創建文件,只需使用stringbuilder內容傳遞XML(),並讓用戶保存電子表格。

謝謝,

回答

1

也許這會幫助你。把你的代碼:

Response.AppendHeader("Content-Type", "application/ms-excel"); 
Response.AppendHeader("Content-disposition", "attachment; filename=Rep.xls"); 
Response.Charset = ""; 

然後用你:

Response.Write(stringbuilder); 

不要忘記:

Response.End();