⑴ 在java中如何取得当前工作目录
你好,提问者:
不知道我理握虚答解的是否是你想问的。如果解决了你的问题,请采纳,若有疑问,请追问。谢谢。
packagecom.gc.action.Test;
importjava.io.File;
publicclassFileName{
publicstaticvoidmain(String[]args){
getFileName();
}
//取得当前目录的路径
publicstaticvoidgetFileName(){
Filefile=newFile("誉蠢.");
Stringpath=file.getAbsolutePath();
System.out.println(path);
}
}
结段慧果:
D:.
⑵ java 怎么获取web根目录
以工程名为TEST为例: x0dx0ax0dx0a(1)得到包含工程名的当前页面全路径:request.getRequestURI() x0dx0a结果:/TEST/test.jsp x0dx0a(2)得到工程名:request.getContextPath() x0dx0a结果:/TEST x0dx0a(3)得到当前页面所在目录下全名称:request.getServletPath() x0dx0a结果:如果页面在jsp目录下 /TEST/jsp/test.jsp x0dx0a(4)得到页面所在服务器的全路径:application.getRealPath("页面.jsp") x0dx0a结果:D:/resin/webapps/TEST/test.jsp x0dx0a(5)得到页面所在服务器的绝对路径:absPath=new java.io.File(application.getRealPath(request.getRequestURI())).getParent();x0dx0a结果:D:/resin/webapps/TEST x0dx0ax0dx0a2.在类中取得路径: x0dx0ax0dx0a(1)类的绝对路径:String u=Class.class.getClass().getResource("/").getPath() x0dx0a结果:/D:/TEST/WebRoot/WEB-INF/classes/pack/ x0dx0a(2)得到工程的路径:System.getProperty("user.dir") x0dx0a结果:D:/TEST x0dx0ax0dx0a3.在Servlet中取得路径: x0dx0ax0dx0a(1)得到工程目录:request.getSession().getServletContext().getRealPath("") 参数可具体到包名。 x0dx0a结果:E:/Tomcat/webapps/TEST x0dx0a(2)得到IE地址栏地址:request.getRequestURL() x0dx0a结果:http://localhost:8080/TEST/test x0dx0a(3)得到相对地址:request.getRequestURI() x0dx0a结果:/TEST/test
⑶ 在java类中怎么获得java项目的目录
一 相对路径的获得
说明:相对路径(即不写明时候到底相对谁)均可通过以下方式获得(不论是一般的java项目还是web项目)
String relativelyPath=System.getProperty("user.dir");
上述相对路径中,java项目中的文件是相对于项目的根目录
web项目中的文件路径视不同的web服务器不同而不同(tomcat是相对于 tomcat安装目录\bin)
二 类加载目录的获得(即当运行时某一类时获得其装载目录)
1.1)通用的方法一(不论是一般的java项目还是web项目,先定位到能看到包路径的第一级目录)
InputStream is=TestAction.class.getClassLoader().getResourceAsStream("test.txt");
(test.txt文件的路径为 项目名\src\test.txt;类TestAction所在包的汪游猜第一级目录位于src目录下)
上式中将TestAction,test.txt替换成对应成相应的类名和文件名字即可
1.2)通用方法二 (此方法和1.1中的方法类似,不同的是此方法必须以'/'开头,参考http://riddickbryant.iteye.com/blog/436693)
InputStream is=Test1.class.getResourceAsStream("/test.txt");
(test.txt文件的路径为 项目名\src\test.txt,类Test1所在包的第一级目录位于src目录下)
三 web项目根目录的获得(发布之后)
1 从servlet出发
可建立一个servlet在其的init方法中写入如下语句
ServletContext s1=this.getServletContext();
String temp=s1.getRealPath("/"); (关困型键)
结果形如:D:\工具\Tomcat-6.0\webapps\002_ext\ (002_ext为项目名字)
如果是磨滚调用了s1.getRealPath("")则输出D:\工具\Tomcat-6.0\webapps\002_ext(少了一个"\")
2 从httpServletRequest出发
String cp11111=request.getSession().getServletContext().getRealPath("/");
结果形如:D:\工具\Tomcat-6.0\webapps\002_ext\
四 classpath的获取(在Eclipse中为获得src或者classes目录的路径)
方法一 Thread.currentThread().getContextClassLoader().getResource("").getPath()
eg: String t=Thread.currentThread().getContextClassLoader().getResource("").getPath();
System.out.println("t---"+t);
输出:t---/E:/order/002_ext/WebRoot/WEB-INF/classes/
方法二 JdomParse.class.getClassLoader().getResource("").getPath() (JdomParse为src某一个包中的类,下同)
eg:String p1=JdomParse.class.getClassLoader().getResource("").getPath();
System.out.println("JdomParse.class.getClassLoader().getResource--"+p1);
输出: JdomParse.class.getClassLoader().getResource--/E:/order/002_ext/WebRoot/WEB-INF/classes/
另外,如果想把文件放在某一包中,则可以 通过以下方式获得到文件(先定位到该包的最后一级目录)
eg String p2=JdomParse.class.getResource("").getPath();
System.out.println("JdomParse.class.getResource---"+p2);
输出: JdomParse.class.getResource---/E:/order/002_ext/WebRoot/WEB-INF/classes/jdom/ (JdomParse为src目录下jdom包中的类)
四 属性文件的读取:
方法 一
InputStream in = lnew BufferedInputStream( new FileInputStream(name)); Properties p = new Properties(); p.load(in);
注意路径的问题,做执行之后就可以调用p.getProperty("name")得到对应属性的值
方法二
Locale locale = Locale.getDefault();
ResourceBundle localResource = ResourceBundle.getBundle("test/propertiesTest", locale);
String value = localResource.getString("test");
System.out.println("ResourceBundle: " + value);
工程src目录下propertiesTest.properties(名字后缀必须为properties)文件内容如下:
test=hello word
⑷ java 怎么获取web根目录
在java中获得文件的路径在我们做上传文件操作时是不可避免的。 web 上运行 1:this.getClass().getClassLoader().getResource("肢昌蠢/").getPath(); this.getClass().getClassLoader().getResource("").getPath(); 得到的是 ClassPath的绝对URI路径。
以工程名为TEST为例:
(1)得到包含工程名的当前页面全路径:request.getRequestURI(),结果:/TEST/test.jsp。
(2)得到工程名:request.getContextPath(),结果:/TEST。
(3)得到当前页面所在目录下全名称:request.getServletPath()。结果:如果页面在jsp目录下 /TEST/jsp/test.jsp。
(4)得到页面所在服务器的全路径:application.getRealPath("页面.jsp"),结果D:/resin/webapps/TEST/test.jsp。
(5)得到迅竖页面所在服务器的绝对路径:absPath=new java.io.File(application.getRealPath(request.getRequestURI())).getParent();
结果:D:/resin/webapps/TEST。
⑸ java怎么获取一个目录下的所有文件名
获取一个目录下的所有文件和目录方法:
importjava.io.File;
publicclassFileTest{
publicstaticvoidmain(String[]args){
/**
*将目标目录封装成File对象。
*/
Filedir=newFile("/Users/zym/Desktop/Mac应用程序");
/**
*获取目录下的所有文件和文件夹
*/
String[]names=dir.list();
for(Stringname:names){
System.out.println(name);
}
}
}
通过文件过滤器获取某个目录下的文件,例如所有的 .txt、.doc文件。
过滤器:
importjava.io.File;
importjava.io.FilenameFilter;
{
@Override
publicbooleanaccept(Filedir,Stringname){
returnname.endsWith(".doc");
}
}
获取某个目录下的按照过滤器规则的所有文件:
importjava.io.File;
publicclassFileTest{
publicstaticvoidmain(String[]args){
/**
*将目标目录封装成File对象。
*/
Filedir=newFile("/Users/zym/Desktop/Mac应用程序");
/**
*通过过滤器获取目录下的所有的.doc文件
*/
String[]names=dir.list(newFilterByDoc());
for(Stringname:names){
System.out.println(name);
}
}
}
希望能对您有所帮助!
⑹ java 怎么获取某文件的目录
File dir=file.getParentFile();返埋郑回父目录稿态
String dir=file.getParent();返回父目录弯敬颂的路径