学习Path.combine方法
今天碰到一个在站点下与虚拟目录下图片上传路径显示错误这个问题,后面学习了解了路径Path里的combine路径合并方法。简结总结分享下。。。
combine方法解释:包含合并路径的字符串(顾名思义就是合并两个路径的字符串),两个路径字符串不能为空,若后者含有绝对路径,则只返回第二个路径。
语法:
public static string Combine
{
string Path1:
string Path2;
}
比如:
string url = System.IO.Path.Combine("/web", "uploadImg/");
结果是:/web\uploadimg/ (需要将\符号替换)
string url = System.IO.Path.Combine("/web", "/uploadImg/");
结果是:/uploadimg/
string url = System.IO.Path.Combine("/", "uploadImg/");
结果是:/uploadimg/
结合Request.ApplicationPath方法学习使用
Request.ApplicationPath是获得网站配置路径,下面是两种情况:
1、若网站是站点,放在根目录下,获得的是:/
2、若网站是虚拟目录,及放在子文件夹里,获得的是:/filename
看一个例子:Request.ApplicationPath+ "/images/a.gif "
1、如果是站点,就是等于 "//images/a.gif "
2、如果存在虚拟目录web就是 "/web/images/a.gif "
当想在上传图片获得图片保存绝对路径,并且满足站点及虚拟目录时,考虑与combine方法的结合,如下:
string path =Request.ApplicationPath;
string url = System.IO.Path.Combine(path, "uploadImg/");
url = url.replace(@"\","/"); (这个路径及你想要的图片绝对路径)
好了,文章比较简洁,亦比较简单,都是实例说明,若觉得有价值,欢迎分享转载!!!
本博文章基本上属于原创或收集整理,都是心血结晶。
欢迎转载分享,转载请注明出处,谢谢!
本文地址:学习Path.combine方法