EL表达式如何获得绝对路径

EL表达式如何获得绝对路径,第1张

我们一般的做法是

建立一个单独的jsp文件,然后在文件里面用

<c:set var="path" value="${pageContextrequestcontextPath}"/>

然后再用到的文件里面导入上面那个jsp文件,

在需要的地方直接写 ${path} 就可以了

当然如果需要的地方少的话直接写:${pageContextrequestcontextPath}

  <input id="myfile" type="file" />

  <br />

  <img src="" alt="Image to be upload" />

  <div id="info"></div>

  <script type="text/javascript">

  var dFile = documentgetElementById('myfile');

  var dImg = documentgetElementsByTagName('img')[0];

  var dInfo = documentgetElementById('info');

  dFileonchange = function(){

  if(!dFilevaluematch(/jpg|gif|png|bmp/i)){alert('File type must be: jpg, gif, bmp or png !');return;}

  if(dFilefiles){

  dImgsrc = dFilefiles[0]getAsDataURL();

  alert(dImgsrc);

  }else if(dFilevalueindexOf('\\') > -1 || dFilevalueindexOf('\/') > -1){

  dImgsrc = dFilevalue;

  alert(dImgsrc);

  }

  }

  </script>

  输出 完整路径

这是我以前写的一个上传的时候,里面用到了获取路径的代码,你看看对你有用不吧,如果对这个代码有不懂的,可以追问,下面附上我的代码:

protected void btnUp_Click(object sender, EventArgs e)

{

//1验证是否选择文件

if (fuImgHasFile)

{

//2验证文件类型是否符合要求

//获取文件后缀()

string strFileType = PathGetExtension(fuImgPostedFileFileName)ToLower();//获取文件后缀名,ToLower():转化为小写

//4获取上传后的目录//将虚拟路径映射成物理目录路径

string strPath = ServerMapPath(ConfigurationManagerAppSettings["upPath"]ToString());

//获取配置文件Webconfig中appSettings中的imgType

string strType = ConfigurationManagerAppSettings["imgType"]ToString();

if (strTypeIndexOf(strFileType) > -1)

{

//3验证文件大小

if (fuImgPostedFileContentLength < 2048000)

{

DateTime dtNow = DateTimeNow;

//以年月日创建文件夹

strPath += dtNowToString("yyyy-MM-dd")+"\\";

try

{

//验证指定目录文件夹是否存在

if (!DirectoryExists(strPath))

{

//创建文件夹

DirectoryCreateDirectory(strPath);

}

//文件重命名

string strNewName = dtNowToString("yyyyMMddhhmmssfff") + strFileType;

//保存(服务器)

fuImgSaveAs(strPath + strNewName);

ResponseWrite("文件上传成功!");

}

catch (Exception ex)

{

ResponseWrite(exMessage);

}

}

else

ResponseWrite("对不起,上传文件不得超过2M!");

}

else

ResponseWrite("对不起,上传文件类型不正确!");

}

else

ResponseWrite("对不起,请选择上传文件!");

}

你好,最近我也在做这个,根据你说这个,在文档没有具体的方法,只有你下载到自己的服务器,然后把自己的服务器路径当地址,例如:htttp:///xxxjpg 这种形式,这种是针对于页面采用JS-SDK的做法。如果你用的是微信客户端上传的,可以获取到路径。希望我的回答对你有帮助!

string filePath = ServerMapPath("D:\tst\tsttx");

参考MSDN

http://msdnmicrosoftcom/zh-cn/library/systemwebhttpserverutilitymappathaspx

解释:

public string MapPath(

string path

)

参数

path

类型:SystemString

Web 服务器的虚拟路径。

返回值

类型:SystemString

与 path 相对应的物理文件路径。

在java中获得文件的路径在我们做上传文件操作时是不可避免的。 web 上运行 1:thisgetClass()getClassLoader()getResource("/")getPath(); thisgetClass()getClassLoader()getResource("")getPath(); 得到的是 ClassPath的绝对URI路径。

以工程名为TEST为例:

(1)得到包含工程名的当前页面全路径:requestgetRequestURI(),结果:/TEST/testjsp。

(2)得到工程名:requestgetContextPath(),结果:/TEST。

(3)得到当前页面所在目录下全名称:requestgetServletPath()。结果:如果页面在jsp目录下 /TEST/jsp/testjsp。

(4)得到页面所在服务器的全路径:applicationgetRealPath("页面jsp"),结果D:/resin/webapps/TEST/testjsp。

(5)得到页面所在服务器的绝对路径:absPath=new javaioFile(applicationgetRealPath(requestgetRequestURI()))getParent();

结果:D:/resin/webapps/TEST。

拓展:在类中取得路径的方法

(1)类的绝对路径:String u=ClassclassgetClass()getResource("/")getPath()

结果:/D:/TEST/WebRoot/WEB-INF/classes/pack/

(2)得到工程的路径:SystemgetProperty("userdir")

结果:D:/TEST

1、利用SystemgetProperty()函数获取当前路径:

Systemoutprintln(SystemgetProperty("userdir"));//userdir指定了当前的路径

2、使用File提供的函数获取当前路径:

File directory = new File("");//设定为当前文件夹

try{

Systemoutprintln(directorygetCanonicalPath());//获取标准的路径

Systemoutprintln(directorygetAbsolutePath());//获取绝对路径

}catch(Exceptin e){}

FilegetCanonicalPath()和FilegetAbsolutePath()大约只是对于new File("")和new File("")两种路径有所区别。

# 对于getCanonicalPath()函数,“"就表示当前的文件夹,而”“则表示当前文件夹的上一级文件夹

# 对于getAbsolutePath()函数,则不管””、“”,返回当前的路径加上你在new File()时设定的路径

# 至于getPath()函数,得到的只是你在new File()时设定的路径

比如当前的路径为 C:/test :

File directory = new File("abc");

directorygetCanonicalPath(); //得到的是C:/test/abc

directorygetAbsolutePath(); //得到的是C:/test/abc

direcotrygetPath(); //得到的是abc

File directory = new File("");

directorygetCanonicalPath(); //得到的是C:/test

directorygetAbsolutePath(); //得到的是C:/test/

direcotrygetPath(); //得到的是

File directory = new File("");

directorygetCanonicalPath(); //得到的是C:/

directorygetAbsolutePath(); //得到的是C:/test/

direcotrygetPath(); //得到的是

另外:SystemgetProperty()中的字符串参数如下:

SystemgetProperty()参数大全

# javaversion Java Runtime Environment version

# javavendor Java Runtime Environment vendor

# javavendorurl Java vendor URL

# javahome Java installation directory

# javavmspecificationversion Java Virtual Machine specification version

# javavmspecificationvendor Java Virtual Machine specification vendor

# javavmspecificationname Java Virtual Machine specification name

# javavmversion Java Virtual Machine implementation version

# javavmvendor Java Virtual Machine implementation vendor

# javavmname Java Virtual Machine implementation name

# javaspecificationversion Java Runtime Environment specification version

# javaspecificationvendor Java Runtime Environment specification vendor

# javaspecificationname Java Runtime Environment specification name

# javaclassversion Java class format version number

# javaclasspath Java class path

# javalibrarypath List of paths to search when loading libraries

# javaiotmpdir Default temp file path

# javacompiler Name of JIT compiler to use

# javaextdirs Path of extension directory or directories

# osname Operating system name

# osarch Operating system architecture

# osversion Operating system version

# fileseparator File separator ("/" on UNIX)

# pathseparator Path separator (":" on UNIX)

# lineseparator Line separator ("/n" on UNIX)

# username User’s account name

# userhome User’s home directory

# userdir User’s current working directory

JAVA中获取路径:

1jsp中取得路径:

以工程名为TEST为例:

(1)得到包含工程名的当前页面全路径:requestgetRequestURI()

结果:/TEST/testjsp

(2)得到工程名:requestgetContextPath()

结果:/TEST

(3)得到当前页面所在目录下全名称:requestgetServletPath()

结果:如果页面在jsp目录下 /TEST/jsp/testjsp

(4)得到页面所在服务器的全路径:applicationgetRealPath("页面jsp")

结果:D:/resin/webapps/TEST/testjsp

(5)得到页面所在服务器的绝对路径:absPath=new javaioFile(applicationgetRealPath(requestgetRequestURI()))getParent();

结果:D:/resin/webapps/TEST

2在类中取得路径:

(1)类的绝对路径:ClassclassgetClass()getResource("/")getPath()

结果:/D:/TEST/WebRoot/WEB-INF/classes/pack/

(2)得到工程的路径:SystemgetProperty("userdir")

结果:D:/TEST

3在Servlet中取得路径:

(1)得到工程目录:requestgetSession()getServletContext()getRealPath("") 参数可具体到包名。

结果:E:/Tomcat/webapps/TEST

(2)得到IE地址栏地址:requestgetRequestURL()

结果:http://localhost:8080/TEST/test

(3)得到相对地址:requestgetRequestURI()

结果:/TEST/test

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » EL表达式如何获得绝对路径

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情