2 a491442025 a491442025 于 2014.12.16 17:13 提问

ASP.NET文件下載服務器與本地路勁問題

            string Path = @"C:\標籤報表"+Time+".xls";
            using (FileStream f = new FileStream(Path, FileMode.Create, FileAccess.ReadWrite))
            {
                workbook.Write(f);
            }

如題,當網站架設在服務器後,不太確定瀏覽器中下載的文件是存在服務器還是本地,謝謝。Server.MapPath(),這個是獲取服務器地址我知道

6个回答

huyuyang6688
huyuyang6688   2014.12.17 17:43

按照楼主的意思,因为这段代码是运行在服务端的,因此可能是保存在服务端(就是你发布程序的那台电脑)。

给楼主分享一篇文章,希望对您有所帮助:ASP.NET实现文件的上传和下载

a491442025
a491442025 好的,十分謝謝!
接近 3 年之前 回复
caozhy
caozhy   Ds   Rxr 2014.12.16 17:21

不知道你的本地是什么意思。服务器不能直接访问客户端上的文件,必须先上传。
服务器也不能决定下载的文件被用户保存在客户端的什么地方。

a491442025
a491442025 我的意思是,電腦A做服務器的話,電腦B就是本地的意思。服務器中本來有一個Excel模版,而當在本地運行網站時,通過調用服務器中的模版,並填充數據,最後直接將Excel另存為在C盤,現在就是不知道另存為的是在服務器還是在本地,沒有另外一台電腦可以測試!不知道表達的清除不!!!
接近 3 年之前 回复
caozhy
caozhy   Ds   Rxr 2014.12.16 17:34

没有别的计算机不着急,你可以安装一个Virtual PC或者VMWare,用虚拟机来测试。
Server.MapPath取的是基于网站程序的路径,这个可以保证将网站部署到另一台计算机仍然有效。
直接写盘符、路径则是绝对路径。那么当你把程序部署到服务器上后,你得确保服务器的那个盘的那个路径存在。

q107770540
q107770540   Ds   Rxr 2014.12.16 23:20

你的WEB程序发布在哪台机器上,那么读取的路径就是哪台机器上的

a491442025
a491442025   2014.12.17 08:47

測試出來,這樣的路勁是服務器的路勁,即發佈在那臺機器,路勁就在哪臺機器上!謝謝各位回答。

rui888
rui888   Ds   Rxr 2014.12.17 09:14

其实最好的时候下载的时候做个弹出的,然后用户指定 存放的路径。

a491442025
a491442025 嗯嗯,現在改成用調用瀏覽器自帶的下載。
接近 3 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片