文件路径未正确使用

时间:2013-07-29 05:27:51

标签: c# asp.net

在我的asp.net网站内,我正在尝试访问文件

 FileStream stream = File.Open("/App_Data/" + FileName, FileMode.Open, FileAccess.Read);

我希望此代码在我的网站应用数据文件夹中选择xlsxfile。 此代码始终从

之类的目录中获取整个路径
'c:\App_Data\w1.xlsx

我不希望这个代码用于root URL。我只想在我的网站中获取文件。我如何调整代码来实现这个目标

3 个答案:

答案 0 :(得分:4)

使用Server.MapPath("~/App_Data/" + FileName)代替"/App_Data/" + FileName

答案 1 :(得分:3)

试试这个:

File.Open(Server.MapPath("~") + FileName, FileMode.Open, FileAccess.Read);

同时查看这个答案,它对MapPath有很好的解释

Server.MapPath("."), Server.MapPath("~"), Server.MapPath(@"\"), Server.MapPath("/"). What is the difference?

答案 2 :(得分:2)

尝试使用

Server.MapPath('~/App_Data/' + FileName)