不是有效的虚拟路径,未能映射路径

今天要写一段读写文件的程序,使用this.Server.MapPath(str),str是一路径字符串,如:http://localhost/web/index.html
,不料却出现“不是有效的虚拟路径”的错误,马上检查程序,感觉没有什么错误,于是乎网上搜,
找啊找,就是找不到解决方案。只有自己慢慢调试了;
先使用了一个根路径"/",居然换了一个错误:“未能映射路径”,就搜这个错误,这个还有相应的回答:
把"/"换成"~/",成功了。心窃喜。。。
于是先把str.ToLower(),然后str.Replace("http://","");接着str.SubString(str.IndexOf("/"));
最后str = "~"+str;
this.Server.MapPath(str);
成功。。。
代码如下:

1 str = str.ToLower();
2 if(str.IndexOf("http://"> -1)
3                 {
4                     str = str.Replace("http://","");
5                     str = str.Substring(str.IndexOf("/"));
6                 }
7                 str = this.Server.MapPath("~"+str);

本博客内容公供学习研究用,和工作内容无关.
原文地址:https://www.cnblogs.com/ITzen/p/1202611.html