我有一些文件存儲在我的機器上。當用戶想要生成鏈接時,頁面應該生成超鏈接。該超鏈接可以通過任何其他用戶使用,以下載文件如何在asp.net中爲文件下載創建超鏈接?
回答
有一個LinkButton和Click事件做以下
你的aspx文件將具有以下
<asp:LinkButton runat="server" OnClick="btnDownload_Click" Text="Download"/>
您的代碼後面將有以下
protected void btnDownload_Click(object sender, EventArgs e)
{
try
{
var fileInBytes = Encoding.UTF8.GetBytes("Your file text");
using (var stream = new MemoryStream(fileInBytes))
{
long dataLengthToRead = stream.Length;
Response.Clear();
Response.ClearContent();
Response.ClearHeaders();
Response.BufferOutput = true;
Response.ContentType = "text/xml"; /// if it is text or xml
Response.AddHeader("Content-Disposition", "attachment; filename=" + "yourfilename");
Response.AddHeader("Content-Length", dataLengthToRead.ToString());
stream.WriteTo(Response.OutputStream);
Response.Flush();
Response.Close();
}
Response.End();
}
}
catch (Exception)
{
}
}
這個答案中沒有什麼關於「生成鏈接」 –
好吧,我做了他想做的最終效果。是的,這可以被視爲生成下載鏈接。他必須做的唯一事情就是當他想要生成鏈接時,將事件添加到鏈接按鈕上。我的理解是,當他說生成一個鏈接,他的意思是如何創建。我的回答對他來說已經夠好了。 –
@DanHunex您的回答是使用'「text/xml」',使文件無法正確下載 - 其次BufferOutput必須爲false - 也不好使用頁面下載文件 - 現在只需一個簡單的鏈接做一個完整複雜的代碼,爲什麼?具有正確路徑的簡單超鏈接完成了這項工作。你也假設文件在內存中,但是說在磁盤上,這是從內存中讀取的文件,你說的「你的文件文本」。 – Aristos
可以直接與該文件鏈接的超級鏈接,如果你知道地址,但是,這是由瀏覽器的限制。例如。如果客戶端上安裝了PDF閱讀器,那麼PDF將不會被下載,而是顯示出來。一個好的解決方案是有一個單獨的頁面來下載文件。只需在querystring中傳遞文件名,並在pageload事件中只傳出響應流中的文件即可。這種方式可以使用url說dwnld.aspx?filename.ext
現在,您可以通過上述邏輯生成URL。
謝謝..這真的很有幫助! –
- 1. 如何在asp.net mvc中創建可下載的文件鏈接?
- 2. 如何在drupal中創建文件下載鏈接8
- 3. 如何使用PHP爲文件創建下載鏈接?
- 4. 如何爲IPFS託管的文件創建下載鏈接?
- 5. 如何創建超鏈接在本文
- 6. 創建鏈接下載PDF文件
- 7. Sitecore - 創建文件下載鏈接
- 8. XPages:如何創建鏈接從文件系統下載文件
- 9. 如何使文件作爲asp.net中的下載鏈接提供?
- 10. 如何下載在asp.net中創建該文件的文件
- 11. 創建在asp.net GridView中的超鏈接(沒有超鏈接控件)
- 12. 如何在kivy中創建超鏈接?
- 13. 如何在extjs4中創建超鏈接?
- 14. 如何在iReport中創建超鏈接?
- 15. 如何在AX中創建超鏈接?
- 16. 如何在java中創建超鏈接?
- 17. 如何在ColdFusion中創建超鏈接?
- 18. 如何在Canvas中創建超鏈接
- 19. 如何在xsl中創建超鏈接
- 20. 如何創建可下載的鏈接到文本文件?
- 21. 如何在jQuery中爲qrcode創建下載鏈接?
- 22. 如何在PHP文件中創建超鏈接
- 23. 如何在joomla文章中創建下載鏈接?
- 24. 如何在android webview中直接下載鏈接下載文件
- 25. 創建XML超鏈接下載鏈接動態
- 26. aFrame.io創建超鏈接和下載鏈接
- 27. asp.net文件上傳(如何創建超鏈接載的文件,在我的GridView中顯示)
- 28. 如何在ASP.NET中動態創建新的超鏈接?
- 29. 如何創建下載鏈接
- 30. 如何創建下載鏈接?
你是什麼意思「生成鏈接」? –
所有文件的列表都顯示在頁面上..用戶必須能夠獲得該文件的鏈接,以便他/她可以在他們的朋友之間共享它。 –
如果您正在獲取文件列表並顯示它,那麼您應該已經知道這些網址是什麼。只需將它們與文件名一起列出即可。 –