`

java 路径问题 整理

阅读更多

最近整理了一下项目中可能需要用到的java路径问题,方便查阅。
     /**

* 获得工程根目录 
*windows下
*/
public static String getRootPath(){
      String path = FileUtil.class.getResource("/../../").toString();
      try {
          path = java.net.URLDecoder.decode(path, "UTF-8");
          path = path.replace("file:/", "");//注意这里
          } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
      }
          return path;
}
 


/**
*linux下
**/
public static String getRootPathLinux(){
          String path = FileUtil.class.getResource("/../../").toString();
        try {
              path = java.net.URLDecoder.decode(path, "UTF-8");
              path = path.replace("file:", "");//少了"/"
             } catch (UnsupportedEncodingException e) {
                  e.printStackTrace();
             }
          return path;
}
 



*******************************************************************************************
system.out.println(System.getProperty("user.dir"));//user.dir指定了当前的路径
2、使用File提供的函数获取当前路径:
File directory = new File("");//设定为当前文件夹
try{
System.out.println(directory.getCanonicalPath());//获取标准的路径
System.out.println(directory.getAbsolutePath());//获取绝对路径
}catch(Exceptin e){}
File.getCanonicalPath()和File.getAbsolutePath()大约只是对于new File(".")和new File("..")两种路径有所区别。
# 对于getCanonicalPath()函数,“."就表示当前的文件夹,而”..“则表示当前文件夹的上一级文件夹
# 对于getAbsolutePath()函数,则不管”.”、“..”,返回当前的路径加上你在new File()时设定的路径
# 至于getPath()函数,得到的只是你在new File()时设定的路径
比如当前的路径为 C:\test :
File directory = new File("abc");
directory.getCanonicalPath(); //得到的是C:\test\abc
directory.getAbsolutePath(); //得到的是C:\test\abc
direcotry.getPath(); //得到的是abc
File directory = new File(".");
directory.getCanonicalPath(); //得到的是C:\test
directory.getAbsolutePath(); //得到的是C:\test\.
direcotry.getPath(); //得到的是.
File directory = new File("..");
directory.getCanonicalPath(); //得到的是C:\
directory.getAbsolutePath(); //得到的是C:\test\..
direcotry.getPath(); //得到的是..

 

分享到:
评论

相关推荐

    Java路径问题汇总.pdf

    以下是对文档内容的详细解读,旨在整理Java路径问题相关的核心知识点。 ### 1. 类加载器与资源定位 文档中提到了使用`TestURL().class.getResource("")`方法来获取资源路径。在Java中,类加载器会使用`getResource...

    Java上机问题整理及解决

    【Java上机问题整理及解决】是针对初学者在进行Java编程实践时遇到的问题的汇总。这些问题主要包括但不限于以下几个方面: 1. **“Unsupported major.minor version”错误**:这是一个常见的编译与运行版本不匹配的...

    Java Resource路径整理总结

    Java Resource路径整理总结 Java Resource路径整理总结是 Java 编程语言中一个重要的知识点,主要介绍了 Java 中 Resource 路径的整理总结,旨在帮助开发者更好地理解和使用 Resource 路径。 Java Resource 路径...

    Java+Web开发实践教程ppt课件Java实用源码整理learns

    "更多Java资料学习.url"可能是一个链接,指向更多的Java学习资源,扩展学习路径。而"jsymxx88.zip"可能是另一个压缩包,可能包含更高级的Java项目源码或者特定主题的补充资料。 总的来说,这门【Java+Web开发实践...

    JAVA核心知识整理.pdf

    ### JAVA核心知识整理 #### JVM基础 - **JVM(Java虚拟机)概述**: - Java虚拟机是运行所有Java程序的基础环境,它提供了一个抽象的计算机模型,能够执行编译后的Java字节码。 - **JVM内存区域**: - **程序...

    java中的IO整理完整版

    以下是对Java IO的详细整理: 首先,Java中的`File`类是操作文件和目录的基础,它提供了许多方法来创建、删除、重命名文件以及检查文件属性。在案例1中,通过`new File("D:\\hello.txt")`创建了一个`File`对象,...

    140个java源码实例Java实用源码整理learns

    标题中的“140个Java源码实例Java实用源码整理learns”表明这是一个集合了140个Java编程的实战代码示例,旨在帮助学习者深入理解和掌握Java编程语言。这些实例通常涵盖了许多Java的基础和进阶概念,可能是从小到大的...

    java的相关整理

    安装后,设置JAVA_HOME环境变量,指向JDK的安装路径,确保PATH环境变量包含bin目录,这样命令行就能识别javac和java命令。 2. ** HelloWorld 程序**:学习任何编程语言的第一步通常是编写“Hello, World!”程序。在...

    JAVA核心知识点整理——java自学资料.rar

    这份"JAVA核心知识点整理——java自学资料.rar"包含了一份详细的Java学习资源,旨在帮助已经具备一定Java基础知识的开发者进一步提升技能,深入理解Java的底层机制。以下是这份资料可能涵盖的一些核心知识点和学习...

    Java基础知识整理

    路径配置正确后,就可以在命令行中直接运行Java程序。配置环境变量的临时方法可以通过set命令在DOS命令行中设置,而永久方法则是在系统环境变量中添加。 开发Java程序的第一步通常是写一个简单的Hello World程序,...

    Java算法大全Java实用源码整理learns

    其次,“Java实用源码整理”部分可能涵盖了日常开发中的常见问题解决方案,例如文件操作、网络通信、多线程同步、数据结构实现(如链表、树、队列、栈)、数据库操作、设计模式的应用等。这些源码实例能让你更好地...

    Java基础知识方面的面试题pdfJava实用源码整理learns

    Java作为一门广泛使用的编程语言,其基础知识在面试中经常被考察。这份"Java基础知识方面的面试题pdf"很可能是对Java核心概念、语法、类库...建议按照一定的学习路径,结合理论与实践,逐步提升自己的Java技术水平。

    个人资料个人资料个人资料

    本压缩包文件“JAVA核心面试知识整理”显然提供了一份详尽的资料,旨在帮助Java开发者巩固和准备面试过程中的关键问题。 【描述】:“个人资料个人资料个人资料” 虽然描述部分重复了“个人资料”这个词,但我们...

    21天学会java网游编程Java实用源码整理learns

    在“21天学会java网游编程Java实用源码整理learns”这个学习资源中,我们主要探讨的是如何在21天内快速掌握Java语言,并将其应用于网络游戏编程。这个压缩包包含了一些关键的学习材料,如“下载及使用说明.txt”提供...

    JAVA核心面试知识整理

    标题《JAVA核心面试知识整理》指出了整理的内容主要是Java基础知识,对于面试来说,这些基础知识点是必考的核心,掌握这些知识对求职者至关重要。描述中提到“搞懂这些,最起码不会饿死”,暗示这些知识点是Java编程...

    java私塾学习笔记整理

    ### Java私塾学习笔记整理 #### 第一章:Java入门 **一、Java是什么?** Java是一种广泛使用的高级编程语言,由Sun Microsystems于1995年推出。它旨在为跨平台开发提供一种通用的语言环境,使开发者能够在任何...

    JAVA核心知识点整理.pdf

    这份"JAVA核心知识点整理.pdf"文档详尽地涵盖了Java开发中的关键概念和技术,包括JVM、Java集合框架、多线程并发、Spring框架原理、网络通信库Netty、分布式协调服务Zookeeper、负载均衡策略以及分布式缓存等。...

    通过java的反射技术获取,某个包路径下的类,并以表格形式打印类的属性注解注释及属性名称等

    在给定的场景中,我们需要实现的功能是遍历指定包路径下的所有类,获取它们的属性信息,包括属性的注解和注释,并以表格形式输出。 首先,我们需要通过`Package.getPackage(String name)`方法获取指定包名的Package...

    java后端学习课程整理

    在 JAVA 中,CLASSPATH 设置是指设置 JAVA 类路径,用于告诉 JVM哪里可以找到JAVA 类文件。可以通过 java 命令的 -cp 参数指定 class path,也可以设置 Windows 系统的 %CLASSPATH% 变量或 Unix/Linux 系统的 $$...

    JAVA面试常见问题整理

    11. **IOC容器实现**:通过配置文件确定类路径,扫描并实例化类,使用反射和依赖注入管理对象。 12. **Java类加载器**:包括Bootstrap ClassLoader、Extension ClassLoader、Application ClassLoader和自定义类加载...

Global site tag (gtag.js) - Google Analytics