`

java获得当前文件路径

 
阅读更多

第一种: 
File f = new File(this.getClass().getResource("/").getPath()); 
System.out.println(f); 
结果: 
C:\Documents%20and%20Settings\Administrator\workspace\projectName\bin 
获取当前类的所在工程路径; 
如果不加“/” 
File f = new File(this.getClass().getResource("").getPath()); 
System.out.println(f); 
结果: 
C:\Documents%20and%20Settings\Administrator\workspace\projectName\bin\com\test 
获取当前类的绝对路径; 

第二种: 
File directory = new File("");//参数为空 
String courseFile = directory.getCanonicalPath() ; 
System.out.println(courseFile); 
结果: 
C:\Documents and Settings\Administrator\workspace\projectName 
获取当前类的所在工程路径; 

第三种: 
URL xmlpath = this.getClass().getClassLoader().getResource("selected.txt"); 
System.out.println(xmlpath); 
结果: 
file:/C:/Documents%20and%20Settings/Administrator/workspace/projectName/bin/selected.txt 
获取当前工程src目录下selected.txt文件的路径 

第四种: 
System.out.println(System.getProperty("user.dir")); 
结果: 
C:\Documents and Settings\Administrator\workspace\projectName 
获取当前工程路径 

第五种: 
System.out.println( System.getProperty("java.class.path")); 
结果: 
C:\Documents and Settings\Administrator\workspace\projectName\bin 
获取当前工程路径

 

from:http://www.cnblogs.com/lostyue/archive/2011/06/27/2091686.html

 

  /** 
         * 通过工程相对路径读取(包内)文件,注意不以“/”开头 
         */
 
        public static void readTextA_ByProjectRelativePath() { 
                System.out.println("-----------------readTextA_ByProjectRelativePath---------------------"); 
                File f = new File("src/com/lavasoft/res/a.txt"); 
                String a = file2String(f, "GBK"); 
                System.out.println(a); 
        } 

        /** 
         * 通过工程相对路径读取(包外)文件,注意不以“/”开头 
         */
 
        public static void readTextB_ByProjectRelativePath() { 
                System.out.println("-----------------readTextB_ByProjectRelativePath---------------------"); 
                File f = new File("doc/b.txt"); 
                String b = file2String(f, "GBK"); 
                System.out.println(b); 
        } 


        /** 
         * 通过CLASSPATH读取包内文件,注意以“/”开头 
         */
 
        public static void readTextA_ByClassPath() { 
                System.out.println("-----------------readTextA_ByClassPath---------------------"); 
                InputStream in = ReadFile.class.getResourceAsStream("/com/lavasoft/res/a.txt"); 
                String a = stream2String(in, "GBK"); 
                System.out.println(a); 
        } 


        /** 
         * 文件转换为字符串 
         * 
         * @param f             文件 
         * @param charset 文件的字符集 
         * @return 文件内容 
         */
 
        public static String file2String(File f, String charset) { 
                String result = null
                try { 
                        result = stream2String(new FileInputStream(f), charset); 
                } catch (FileNotFoundException e) { 
                        e.printStackTrace(); 
                } 
                return result; 
        } 

 

 /** 
         * 文件转换为字符串 
         * 
         * @param in            字节流 
         * @param charset 文件的字符集 
         * @return 文件内容 
         */
 
        public static String stream2String(InputStream in, String charset) { 
                StringBuffer sb = new StringBuffer(); 
                try { 
                        Reader r = new InputStreamReader(in, charset); 
                        int length = 0; 
                        for (char[] c = new char[1024]; (length = r.read(c)) != -1;) { 
                                sb.append(c, 0, length); 
                        } 
                        r.close(); 
                } catch (UnsupportedEncodingException e) { 
                        e.printStackTrace(); 
                } catch (FileNotFoundException e) { 
                        e.printStackTrace(); 
                } catch (IOException e) { 
                        e.printStackTrace(); 
                } 
                return sb.toString(); 
        } 

 

package first.second;

import java.io.File;

public class GetPath {

	public static void getPath()
	{
		//方式一
		System.out.println(System.getProperty("user.dir"));
		//方式二
		File directory = new File("");//设定为当前文件夹
		try{
		    System.out.println(directory.getCanonicalPath());//获取标准的路径
		    System.out.println(directory.getAbsolutePath());//获取绝对路径
		}catch(Exception e)
		{
			e.printStackTrace();
		}
		//方式三
		System.out.println(GetPath.class.getResource("/"));
		System.out.println(GetPath.class.getResource(""));
		//方式4
		System.out.println(GetPath.class.getClassLoader().getResource(""));
		System.out.println(GetPath.class.getClassLoader().getResource("source.xml"));
	}
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		GetPath.getPath();
	}

}

 

分享到:
评论

相关推荐

    Java中获取文件路径的几种方式

    理解如何在Java中获取文件路径,特别是区分绝对路径和相对路径,对于构建稳定、可移植的应用程序至关重要。本文将深入探讨Java中获取文件路径的多种方法,以及这些方法背后的原理。 ### 一、Java中的路径类型 ####...

    JAVA中获取各种路径

    以下是对标题“JAVA中获取各种路径”及其描述和部分内答所提及的几种路径获取方法的详细解析。 ### 1. JSP中的路径获取 #### (1) 获取当前页面的完整路径:`request.getRequestURI()` 此方法返回客户端请求的当前...

    JAVA获取各种路径总结

    - 这些方法非常灵活,可以用于获取各种类型的资源文件路径。 通过以上介绍,我们可以看到,在Java开发中,无论是Web开发还是普通的Java应用程序开发,获取路径都是一个非常重要且实用的功能。掌握这些方法,可以...

    java项目中获取路径详解

    Java 项目中获取路径详解 在 Java 项目中,获取路径是非常重要的,因为它关系到项目的正确运行。特别是在 Java Web 项目中,获取路径变得更加复杂。下面我们将详细讨论 Java 项目中获取路径的方法和注意事项。 ...

    JAVA获取项目路径.doc

    在Java开发中,获取项目的路径是一个非常常见的需求,尤其是在处理文件读写、资源定位等场景时尤为重要。本文将详细介绍如何通过不同的方法来获取项目的各种路径,并结合示例代码进行说明。 #### System....

    JAVA获取FTP文件列表

    ### JAVA获取FTP文件列表知识点详解 #### 一、概述 在现代软件开发中,FTP(File Transfer Protocol)是一种广泛使用的协议,用于在网络上进行文件传输。本文档将详细介绍一个基于Java的实用工具类`FtpClientUtil`...

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

    在Java中,可以通过多种方式获取当前文件路径。以下是一些常用的技巧: 1. **使用`System.getProperty("user.dir")`**: - 这个方法返回当前工作目录的路径。 - 示例代码: ```java System.out.println(System....

    ant自动获取文件路径

    标题“ant自动获取文件路径”涉及的是Apache Ant这一构建自动化工具在处理文件路径时的技巧。Apache Ant是一个基于Java的构建工具,它被广泛用于Java项目中,类似于Unix的make,但依赖于XML来描述构建过程。在Ant中...

    在Java程序中获取当前运行程序的路径

    首先,我们可以通过`java.lang.Class`类的`getResource`或`getResourceAsStream`方法来获取类路径中的资源文件路径。这两个方法都是在类路径中查找资源,返回一个URL对象,从中可以获取路径信息。例如,如果我们有一...

    在JAVA文件中获取该项目的相对路径.doc

    在 Servlet 中,可以使用 request.getServletPath() 获取当前文件的绝对路径,然后使用 request.getSession().getServletContext().getRealPath(request.getRequestURI()) 获取当前文件的绝对路径。同时,也可以使用...

    java 获取项目文件路径实现方法

    在Java编程中,获取项目文件路径是常见的需求,特别是在处理资源文件、配置文件或进行文件操作时。这里我们将深入探讨几种不同的方法来实现这一目标,同时解析每种方法的适用场景和返回路径的特点。 1. `this....

    Java文件路径详解

    Java 文件路径详解是一种在 Java 中获取文件路径的方式。它可以将文件路径转换为 InputStream,以便于读取文件的内容。在 Java 中,有两种方式可以获取文件路径,即使用 Class.getResourceAsStream() 和 ClassLoader...

    用java通过文件操作实现最短路径问题

    下面我们将详细讨论如何在Java中通过文件操作来解决最短路径问题。 首先,我们需要了解最短路径算法。其中,Dijkstra算法和Floyd-Warshall算法是两种常用的方法。Dijkstra算法适用于单源最短路径问题,而Floyd-...

    java文件路径操作详细(转载)

    Java文件路径操作是Java开发中常见且重要的任务,无论是在读写文件、处理资源还是进行系统交互时,都需要对文件路径进行操作。本篇将详细探讨Java中的文件路径处理技术,主要涵盖以下知识点: 1. **File类**: ...

    windows linux 下,获取java项目绝对路径的方法

    windows linux 下,获取java项目绝对路径的方法,struts2设置了struts.multipart.saveDir后会在根目录建立文件夹,这样会涉及linux下的权限问题

    Java 中几种获取文件路径的方式

    以当前文件为基准进行一级级目录指向被引用的资源文件。在 Java 代码中以当前运行的代码所在的位置为参照位置,只要被引用的文件相对于引用的文件的位置不变就可以被读取到。一旦改变相对位置就无法被读取到。 2.2 ...

    java实现获取指定路径下指定格式的所有文件

    java实现 获取指定路径下 指定格式 的所有文件

    Java获取Tomcat下war包部署的Web工程根目录路径的方法

    开发web工程时经常要获取工程的根目录,自己用Java实现的获取Tomcat下war包部署的Web工程根目录路径的方法,主要利用web工程默认的目录结构,此外也可以指定工程名称获取工程目录的绝对路径

    关于Java文件路径问题

    它提供了许多方法来处理文件路径,如`exists()`检查文件是否存在,`createNewFile()`创建新文件,`mkdirs()`创建多级目录,以及`getPath()`、`getAbsolutePath()`和`getCanonicalPath()`获取各种形式的路径。...

    java绝对路径和相对路径

    本文将详细介绍如何在Java中获取不同类型的路径,包括Web服务器下的文件路径、本地路径以及相对路径。 #### 一、获取Web服务器下的文件路径 在Java Web开发中,获取Web服务器下的文件路径是非常常见的需求。主要有...

Global site tag (gtag.js) - Google Analytics