java的文件路径|JAVA如何得到文件路径

java的文件路径|JAVA如何得到文件路径的第1张示图

A. java如何得到文件路径

用import java.awt.BorderLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.io.File;import javax.swing.JButton;import javax.swing.JFileChooser;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.filechooser.FileFilter;public class FileChooserDemo extends JPanel { static final long serialVersionUID = 5854418136127725290L; public class ExtensionFilter extends FileFilter { private String extensions[]; private String description; public ExtensionFilter(String description, String extension) { this(description, new String[] { extension }); } public ExtensionFilter(String description, String extensions[]) { this.description = description; this.extensions = (String[]) extensions.clone(); } public boolean accept(File file) { if (file.isDirectory()) { return true; } int count = extensions.length; String path = file.getAbsolutePath(); for (int i = 0; i < count; i++) { String ext = extensions[i]; if (path.endsWith(ext) && (path.charAt(path.length() – ext.length()) == '.')) { return true; } } return false; } public String getDescription() { return (description == null ? extensions[0] : description); } } public FileChooserDemo() { JButton jb = new JButton("Open File Viewer"); add(jb); ActionListener listener = new ActionListener() { public void actionPerformed(ActionEvent e) { JFileChooser chooser = new JFileChooser("."); // chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); FileFilter type1 = new ExtensionFilter("Java source", ".java"); FileFilter type2 = new ExtensionFilter("Image files", new String[] { ".jpg", ".gif", "jpeg", "xbm" }); FileFilter type3 = new ExtensionFilter("HTML files", new String[] { ".htm", ".html" }); chooser.addChoosableFileFilter(type1); chooser.addChoosableFileFilter(type2); chooser.addChoosableFileFilter(type3); chooser.setAcceptAllFileFilterUsed(true); chooser.setFileFilter(type2); // Initial filter setting int status = chooser.showOpenDialog(FileChooserDemo.this); if (status == JFileChooser.APPROVE_OPTION) { File f = chooser.getSelectedFile(); System.out.println(f); } } }; jb.addActionListener(listener); } public static void main(String args[]) { JFrame f = new JFrame("Enhanced File Example"); JPanel j = new FileChooserDemo(); f.getContentPane().add(j, BorderLayout.CENTER); f.setSize(300, 200); f.setVisible(true); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); }}

B. JAVA中如何得到文件路径

java文件中获得路径Thread.currentThread().getContextClassLoader().getResource("") //获得资源文件(.class文件)所在路径ClassLoader.getSystemResource("")Class_Name.class.getClassLoader().getResource("")Class_Name.class .getResource("/") Class_Name.class .getResource("") // 获得当前类所在路径System.getProperty("user.dir") // 获得项目根目录的绝对路径System.getProperty("java.class.path") //得到类路径和包路径打印输出依次如下:file:/F:/work_litao/uri_test/WebContent/WEB-INF/classes/file:/F:/work_litao/uri_test/WebContent/WEB-INF/classes/file:/F:/work_litao/uri_test/WebContent/WEB-INF/classes/file:/F:/work_litao/uri_test/WebContent/WEB-INF/classes/file:/F:/work_litao/uri_test/WebContent/WEB-INF/classes/com/xml/imp/F:\work_litao\uri_testF:\work_litao\uri_test\WebContent\WEB-INF\classes;F:\work_litao\uri_test\WebContent\WEB-INF\lib\dom4j.jar

C. java中怎么写文件路径

你是用myeclipse软件写JAVA的吗,你可以在myeclipse的打开窗口中依次创建项目,包,类什么的编写程序,之后你打开JAVA工作间,找到你的程序,那么地址栏里就是你的JAVA文件路径了,又或者你用dreamever软件,先制作好你的网页,连接好超链接什么的之后,打开代码,就可以看见了

D. java读取文件路径

你的头是e://tttt11.PNG不是e://tttt11//1.PNG???如果头是e://tttt11//1.PNG,filepath没有用,去掉。这段这么改:for (i=0; i <= str.length(); i += 2) { if (i == str.length() – 1 || i == str.length() – 2) break; else fileName = str.substring(i); } // System.out.println(filePath); if(ii!=100) fileName = str.substring(i);………..后面不改.如果头是e://tttt11.PNG,那这个和下面的循环规律不一样,大概写下:if(ii==1)filePath=".PNG";把我上面修改后的代码加到else里就行了(用我上面修改后的代码,不然你的尾还是显不出来).

E. 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文件的路径为 项目名srcest.txt;类TestPath所在包的第一级目录位于src目录下)

三 web项目根目录的获得(发布之后)1 从servlet出发

可建立一个servlet在其的init方法中写入如下语句(没有请求的话会抛空指针导常)

ServletContext s1=this.getServletContext();String temp=s1.getRealPath("/"); (关键)结果形如:F:omcat-6.0.36webappsest(test为项目名字)

如果是调用了s1.getRealPath("")则输出F:omcat-6.0.36webappsest(少了一个"")

2 从httpServletRequest出发(没有请求的话会抛空指针导常)

String path=request.getSession().getServletContext().getRealPath("/");

结果形如:F:omcat-6.0.36webappsest

四 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,“ / ”代表了myprojectme.class.getResourceAsStream("/com/x/file/myfile.xml");第二:前面没有 “ / ”代表当前类的目录me.class.getResourceAsStream("myfile.xml");me.class.getResourceAsStream("file/myfile.xml");

F. java 文件路径问题

我感觉直接用文件的路径是最好的选择。没有必要像你这么麻烦的。 如果你想取某个类的class文件的file对象,可使用以下方法:调用的时候可使用:File f = getFile(C.class); public static File getFile(Class c){ String s = c.getName();//取类的名字,如a.b.C s = s.replace(".", "\\")+".class";//取class文件的路径,如a\b\C.class File f = new File(s); return f; }

G. java 保存文件路径的问题

文件保存路径中如果有中文可能会出现乱码,通常获取到的文件中通常都是专“iso8859-1”格式,需要转换属为“UTF-8”格式。如:String filePath= new String(path.getByte("iso8859-1"),"UTF-8");进行下强制转换后在进行读取即可。通常格式有GBK、UTf-8、iso8859-1、GB2312,如果上面的强制转换不成功,依次进行这些格式的尝试,肯定是可以解决问题的。备注:如果是黑窗口执行的时候报错,那就不是类型转换的错误,而是需要将文件类型另存为UTF-8的文件类型即可。

H. java 文件路径

File f1 = new File("E:/TEXT");f1.mkdir();//确保E盘中一定有文件TEXT//判断村不存在TEXT.txt这个文件,不存在则可以创建了if(!new File("E:/TEXT/TEXT.txt").exists())f1.createNewFile();

I. Java的文件路径问题

Java中文件的路径有相对和绝对路径之分,一般情况下不应用于Web的话都是绝对路径,就是E:\….这种的,相对路径就是从Java文件的位置开始,和要引用的文件的路的相对路径,你这里是转义字符的问题,将("C:\data.txt");一行改成("C:\\data.txt");

J. 在java中怎么获得,本文件的路径

File类有两个常用方法可以得到文件路径一个是:getCanonicalPath(),另一个是:getAbsolutePath(),可以通过类的实例调用这两个方法例如file.getAbsolutePath()其中file是File的实例对象。下面是一个具体例子:

publicclassPathTest{publicstaticvoidmain(String[]args){Filefile=newFile(".\src\");System.out.println(file.getAbsolutePath());try{System.out.println(file.getCanonicalPath());}catch(IOExceptione){e.printStackTrace();}}}

getAbsolutePath()和getCanonicalPath()的不同之处在于,getCanonicalPath()得到的是一个规范的路径,而getAbsolutePath()是用构造File对象的路径+当前工作目录。例如在上面的例子中.(点号)代表当前目录。getCanonicalPath()就会把它解析为当前目录但是getAbsolutePath()会把它解析成为目录名字(目录名字是点号)。

下面是上面程序在我电脑上的输出:

G:xhuojkonw.srcG:xhuojkonwsrc

未经允许不得转载:山九号 » java的文件路径|JAVA如何得到文件路径

赞 (0)