分享

关于获得java运行时目录问题的测试

 gideshi 2012-10-19

关于获得java运行时目录问题的测试

/*
关于获得java运行时目录问题的测试
测试采用的是netbean

此文件所在的目录为
C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\lz_zuoye\bookshop\src\java\com\web
此文件生成的class所在的路径为
C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\lz_zuoye\bookshop\build\web\WEB-INF\classes\com\web
目的:在生成class文件所在的路径中有一个数据库 想得到该路径+数据库名字
*/
package com.web;
/**
*
* @author LZ
*/
import java.io.*; //包含file类
import java.net.*; //包含URL类
public class testdir
{
public static void main(String args[])
{
   System.out.println(System.getProperty("user.dir"));
   //方法1
   File file = new File("");
   System.out.println(file.getAbsolutePath());
   //方法2 等价于 System.out.println(new File("/").getAbsolutePath());  
   File f = new File(".");
   try
    {    System.out.println(f.getCanonicalPath()); }
   catch (Exception e){}

   System.out.println(Thread.currentThread().getContextClassLoader().getResource(""));
   //方法4  
   //
   //下面的代码中testdir.class代表要获取哪个类的目录 根据自己的需要更改
   //
    System.out.println(testdir.class.getClassLoader().getResource(""));
    //方法5     
    System.out.println(ClassLoader.getSystemResource(""));       
    //方法6
    System.out.println(testdir.class.getResource(""));       
    //方法7
    System.out.println(testdir.class.getResource("/")); //Class文件所在路径
    //方法8
   
    try
    {
                String dburl = String.valueOf(Thread.currentThread().getContextClassLoader().getResource(""));
                dburl = dburl + "网上书店.mdb";
                URL url=null;
     url=new URL(dburl);
       file=new File(url.toURI());
    }catch(Exception e){}
    System.out.println( file.toString());//测试用,运行的时候显示绝对路径
        //成功得到结果
        //C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\lz_zuoye\bookshop\build\web\WEB-INF\classes\网上书店.mdb
       
        //之所以要用URL是因为可以通过file.toURI()得到含有空格的地址。
    //如果只是简单的去掉file:/,当路径含有空格的时候就会出错。
    //但是用toURI()就解决了上面的问题。
}
}
/*
C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\lz_zuoye\bookshop
C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\lz_zuoye\bookshop
C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\lz_zuoye\bookshop
file:/C:/Program%20Files/Apache%20Software%20Foundation/Tomcat%205.0/webapps/lz_zuoye/bookshop/build/web/WEB-INF/classes/
file:/C:/Program%20Files/Apache%20Software%20Foundation/Tomcat%205.0/webapps/lz_zuoye/bookshop/build/web/WEB-INF/classes/
file:/C:/Program%20Files/Apache%20Software%20Foundation/Tomcat%205.0/webapps/lz_zuoye/bookshop/build/web/WEB-INF/classes/
file:/C:/Program%20Files/Apache%20Software%20Foundation/Tomcat%205.0/webapps/lz_zuoye/bookshop/build/web/WEB-INF/classes/com/web/
file:/C:/Program%20Files/Apache%20Software%20Foundation/Tomcat%205.0/webapps/lz_zuoye/bookshop/build/web/WEB-INF/classes/

*/
/*分析得用第7种方法
*
*/

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多