java目录路径
❶ java路径怎么设置
java路径设置步骤如下:
1.右击我的电脑—>属性—>高级—>环境变量—>系统变量 ,如图:
java_home 的路径 如C:j2sdk1.4.2_01;
在path中添加 java的bin路径 如C:j2sdk1.4.2_01in;
新建classpath 中添加.;libdt.jar;lib ools.jar;
如 .;C:j2sdk1.4.2_01libdt.jar;C:j2sdk1.4.2_01lib ools.jar;
❷ 如何获得当前Java文件的路径
public class Test {
public static void main(String[] args) {
String path = "Test.java";
File file = new File(path);
System.out.println(file.getAbsoluteFile());
}
}
-----
运行结果:
D:\workspaces\studyStruts2\Test.java
不加任何路径,就是指当前路径
望采纳
❸ java里文件路径怎么写
File file = new File("D:\\123.txt");
你这种不用绝对路径是不行的,
只有一个方法,在web工程启动servlet中获取到webroot路径,在servlet的init中使用String webRoot = getServletContext().getRealPath("/");获取,然后使用这webRoot变量追加路径,再new File(),这样的话要求就是,你的服务必须要启动,否则不会init,无法得到工程发布目录的相对路径
❹ 通过java获取当前项目路径
getClass().getResource() 方法获得相对路径( 此方法在jar包中无效。返回的内容最后包含/)
例如 项目在/D:/workspace/MainStream/Test
在javaProject中,getClass().getResource("/").getFile().toString() 返回:/D:/workspace/MainStream/Test/bin/
publicStringgetCurrentPath(){
//取得根目录路径
StringrootPath=getClass().getResource("/").getFile().toString();
//当前目录路径
StringcurrentPath1=getClass().getResource(".").getFile().toString();
StringcurrentPath2=getClass().getResource("").getFile().toString();
//当前目录的上级目录路径
StringparentPath=getClass().getResource("../").getFile().toString();
returnrootPath;
}
❺ JAVA中绝对路径和目录有什么区别
你说来的绝对路径和目录是源两个不同类型的词..
绝对路径是path,表示一个文件从根目录(盘符)开始到该文件的整个路径,如:D:\application\eclipse\eclipse.exe
(与之相对的是相对路径,及从当前目录开始到达文件的路径,如:eclipse\eclipse.exe)
目录是place,表示一个文件夹,如:application和eclipse都是目录.
(与之相对的是文件,如:eclipse.exe)
❻ java项目根目录和类路径问题
java获取src目录下文件夹来的源相对路径问题如下:
目录结构:
project
out
src
read.java
test.txt
files
opts
项目为priject
out目录为.class输出目录
src下为文件目录
src下有两个包,files、opts
想通过相对路径获取test.txt的路径
但是用反射只能获取到.class,也就是out里的路径
输出后的目录不就是在out里面了,那个里面的和src里面的文件是一样的, getClass().getResource()就可以得到classpath了啊
看看设置的资源文件编译路径
❼ java 文件路径
File dir = new File("e:\\text");
dir.mkdirs();
File file = new File(dir, "file1.txt");
file.createNewFile();
System.out.println(file.getPath());
输出:e:\text\file1.txt
❽ java项目中文件的路径
java项目中文件的路径-方法大全
一、 相对路径的获得
说明:相对路径(即不写明时候到底相对谁)均可通过以下方式获得(不论是一般的java项目还是web项目)
System.getProperty("user.dir");
上述相对路径中,java项目中的文件是相对于项目的根目录web项目中的文件路径视不同的web服务器不同而不同(tomcat是相对于tomcat安装目录in)
二 类加载目录的获得(即当运行时某一类时获得其装载目录)
1.1)通用的方法一(不论是一般的java项目还是web项目,先定位到能看到包路径的第一级目录)
InputStreamis=TestAction.class.getClassLoader().getResourceAsStream("test.txt");(test.txt文件的路径为 项目名src est.txt;类TestPath所在包的第一级目录位于src目录下)
三 web项目根目录的获得(发布之后)
1 从servlet出发
可建立一个servlet在其的init方法中写入如下语句(没有请求的话会抛空指针导常)
ServletContext s1=this.getServletContext();
String temp=s1.getRealPath("/"); (关键)
结果形如:F: omcat-6.0.36webapps est(test为项目名字)
如果是调用了s1.getRealPath("")则输出F: omcat-6.0.36webapps est(少了一个"")
2 从httpServletRequest出发(没有请求的话会抛空指针导常)
String path=request.getSession().getServletContext().getRealPath("/");
结果形如:F: omcat-6.0.36webapps est
四 classpath的获取(在Eclipse中为获得src或者classes目录的路径),放在监听器,可以窗口启动获取路径
方法一Thread.currentThread().getContextClassLoader().getResource("").getPath()
String path = Thread.currentThread().getContextClassLoader()
.getResource("").getPath();
System.out.println("path========"+ path);输出:path========/F:/tomcat-6.0.36/webapps/test/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-/F:/tomcat-6.0.36/webapps/test/WEB-INF/classes/
另外,如果想把文件放在某一包中,则可以 通过以下方式获得到文件(先定位到该包的最后一级目录)
eg String p2=JdomParse.class.getResource("").getPath();
System.out.println("JdomParse.class.getResource---"+p2);
输出:JdomParse.class.getResource--/F:/tomcat-6.0.36/webapps/test/WEB-INF/classes/
(JdomParse为src目录下jdom包中的类)
四 属性文件的读取:
方法 一
InputStream in = lnewBufferedInputStream(newFileInputStream(name));
Properties p =newProperties();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
不通过Servlet获取路径
第一种实现
Java代码
URL url = ClassLoader.getSystemClassLoader().getResource("./");
File file =newFile(url.getPath());
File parentFile =newFile(file.getParent());
System.out.println("webRoot:"+parentFile.getParent());
第二种实现
首先写一个接听类 (推荐使用,容器启动时就执行,不会抛空指针异常,适合做定时器任务来删除服务器文件的路径)
Java代码:
package com.chinacreator.report.listener;
import javax.servlet.ServletContext;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
/**
* @authorxiaoqun.yi
*/
public class PathListener {
private staticServletContext servletContext;
public voidcontextDestroyed(ServletContextEvent sce) {
this.servletContext= sce.getServletContext();
System.out.println("path=======:"+servletContext.getRealPath("/"));
}
public voidcontextInitialized(ServletContextEvent arg0) {
}
}
在web.xml中加入如下配置
Java代码 :
<listener>
<listener-class>com.chinacreator.report.listener.PathListener</listener-class>
</listener>
五、Java中的getResourceAsStream有以下几种:
1. Class.getResourceAsStream(String path) : path 不以’/'开头时默认是从此类所在的包下取资源,以’/'开头则是从ClassPath根下获取。其只是通过path构造一个绝对路径,最终还是由 ClassLoader(类加载器)(获取资源)
2. Class.getClassLoader.getResourceAsStream(String path) :默认则是从ClassPath根下获取,path不能以’/'开头,最终是由ClassLoader获取资源。
3. ServletContext. getResourceAsStream(String path):默认从WebAPP根目录下取资源,Tomcat下path是否以’/'开头无所谓,当然这和具体的容器实现有关。
4. Jsp下的application内置对象就是上面的ServletContext的一种实现。
其次,getResourceAsStream 用法大致有以下几种:
第一: 要加载的文件和.class文件在同一目录下,例如:com.x.y 下有类me.class ,同时有资源文件myfile.xml
那么,应该有如下代码:
me.class.getResourceAsStream("myfile.xml");
第二:在me.class目录的子目录下,例如:com.x.y 下有类me.class ,同时在 com.x.y.file 目录下有资源文件myfile.xml
那么,应该有如下代码:
me.class.getResourceAsStream("file/myfile.xml");
第三:不在me.class目录下,也不在子目录下,例如:com.x.y 下有类me.class ,同时在 com.x.file 目录下有资源文件myfile.xml
那么,应该有如下代码:
me.class.getResourceAsStream("/com/x/file/myfile.xml");
总结一下,可能只是两种写法
第一:前面有 “ / ”
“ / ”代表了工程的根目录,例如工程名叫做myproject,“ / ”代表了myproject
me.class.getResourceAsStream("/com/x/file/myfile.xml");
第二:前面没有 “ / ”
代表当前类的目录
me.class.getResourceAsStream("myfile.xml");
me.class.getResourceAsStream("file/myfile.xml");
❾ java中如何获得运行中的.class文件的存放目录的绝对路径
类名.class.getResource("");
java.lang.Class.getResource()查找给定名字的资源
importjava.net.URL;importjava.lang.*;publicclassClassDemo{
publicstaticvoidmain(String[]args)throwsException{
ClassDemoc=newClassDemo();
Classcls=c.getClass();
//
URLurl=cls.getResource("file.txt");
System.out.println("Value="+url);
//
url=cls.getResource("newfolder/a.txt");
System.out.println("Value="+url);
}}
结果:
Value=file:/C:/Program%20Files/Java/jdk1.6.0_06/bin/file.txt
Value=null
❿ java文件路径问题
假如你的工程根目录为:test
你的图片文件放在:test/src/images/a.gif
所以正确的调用是:
ImageIcon icon = new ImageIcon("src/images/a.gif");
这行代码执行时在test目录下查找到了文件,当然也可以写成
ImageIcon icon = new ImageIcon("./src/images/a.gif");
注意两者的区别,要记住的是src是在test下的目录
总结:所谓相对路径就是相对于工程根目录的位置
打包的话,最好用类进行定位(jar包里的类获取路径)
System.out.println(MyMenu.class.getResource("/")); //MyMenu换成你自己的类
输出下看看
拼接你的图片相对地址