首页 新闻 搜索 专区 学院

C#相对路径绝对路径问题

0
悬赏园豆:30 [已解决问题] 解决于 2018-01-16 17:18

上传文件,文件的url存储到数据库中,存储的是相对路径

查看该文件时,需要先获取到该Url,并转成绝对路径,

file.exists(绝对路径) 判断该文件是否存在,提示找不到该文件

问题补充:

路径下确实有这个文件

如人饮水2019的主页 如人饮水2019 | 初学一级 | 园豆:160
提问于:2018-01-16 15:54
< >
分享
最佳答案
0

Server.MapPath转换后,所有的'/'都被转换成'\\'了。

web服务器的相对路径最左侧需要有'/',转换的路径才是以站点根目录相对的,否则会以当前文件路径相对。

例:

Server.MapPath("Upload/test.txt");
//返回:E:\...\Web\UserConfig\Upload\test.txt

Server.MapPath("/Upload/test.txt")
//返回:E:\...\Web\Upload\test.txt

Server.MapPath("~/Upload/test.txt")
//返回:E:\...\Web\Upload\test.txt

//注:当前控制器在 /Areas/UserConfig/Controllers 下
收获园豆:20
junio.cn | 菜鸟二级 |园豆:445 | 2018-01-16 16:19
其他回答(3)
0

"用 Server.MapPath转换后,得到的内容中:所有的'/'都没有了"???

举个例子看看。

西漠以西 | 园豆:1675 (小虾三级) | 2018-01-16 16:01
0

使用Server.MapPath时在前面加个波浪形

收获园豆:10
dudu | 园豆:34977 (高人七级) | 2018-01-16 16:08

我刚看了下,不是server.mappath的问题。

路径是对的

File.Exists(url)找不到文件

支持(0) 反对(0) 如人饮水2019 | 园豆:160 (初学一级) | 2018-01-16 16:39
0

自己已解决

如人饮水2019 | 园豆:160 (初学一级) | 2018-01-16 17:17
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册