/*
关于获得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种方法
*
*/