Java获取路径的6种方式代码示例

 更新时间:2025年02月19日 09:38:45   作者:西洼工作室  
在Java中获取路径的方法有多种,每种方法适用于不同的场景,这篇文章主要介绍了Java获取路径的6种方式,文中通过代码介绍的非常详细,需要的朋友可以参考下

public class Demo1 {
    public static void main(String[] args) {
        /*
        1.使用 System 属性
         */
        // 获取用户的主目录
        String userHome = System.getProperty("user.home");
        System.out.println("User Home: " + userHome);

        // 获取Java的安装目录
        String javaHome = System.getProperty("java.home");
        System.out.println("Java Home: " + javaHome);

        /*
         * 2.使用 ClassLoader 获取资源路径
         */
        // 获取类路径下的资源文件路径
        ClassLoader classLoader = Demo1.class.getClassLoader();
        URL resourceUrl = classLoader.getResource("config.properties");
        String resourcePath = resourceUrl != null ? resourceUrl.getPath() : null;
        System.out.println("Resource Path: " + resourcePath);

        /*
        3.使用 File 类
         */
        // 创建一个File对象
        File file = new File("example.txt");

        // 获取绝对路径
        String absolutePath = file.getAbsolutePath();
        System.out.println("Absolute Path: " + absolutePath);

        // 获取相对路径(相对于当前工作目录)
        String canonicalPath;
        try {
            canonicalPath = file.getCanonicalPath();
            System.out.println("Canonical Path: " + canonicalPath);
        } catch (IOException e) {
            e.printStackTrace();
        }

        // 获取父目录路径
        String parentPath = file.getParent();
        System.out.println("Parent Path: " + parentPath);


        /*
        4.使用 Paths 类(Java 7及以上)
         */
        // 获取当前工作目录
        Path currentDir = Paths.get(".").toAbsolutePath();
        System.out.println("Current Directory: " + currentDir);

        // 拼接路径
        Path filePath = Paths.get(currentDir.toString(), "example.txt");
        System.out.println("File Path: " + filePath);

        /*
        5.使用 URI
         */
        File file2 = new File("example.txt");
        URI uri = file2.toURI();
        String uriPath = uri.getPath();
        System.out.println("URI Path: " + uriPath);

        /*
        6. 获取当前执行文件的路径(Java应用)
         */
        String path = Demo1.class.getProtectionDomain().getCodeSource().getLocation().getPath();
        System.out.println("Executable Path: " + path);
    }
}

总结

到此这篇关于Java获取路径的6种方式的文章就介绍到这了,更多相关Java获取路径方式内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Netty简单的入门代码示例

    Netty简单的入门代码示例

    这篇文章主要介绍了Netty简单的入门代码示例,Netty 的内部实现是很复杂的,但是 Netty 提供了简单易用的API从网络处理代码中解耦业务逻辑,Netty 是完全基于 NIO 实现的,所以整个 Netty 都是异步的,需要的朋友可以参考下
    2023-12-12
  • Java通过JNI调用C++动态库的完整流程详解

    Java通过JNI调用C++动态库的完整流程详解

    JNI(Java Native Interface),是实现Java/Kotlin与C/C++语言之间交互的桥梁,本文主要为大家介绍了Java通过JNI调用C++动态库的完整流程,需要的可以参考下
    2025-04-04
  • redis发布订阅Java代码实现过程解析

    redis发布订阅Java代码实现过程解析

    这篇文章主要介绍了redis发布订阅Java代码实现过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09
  • intellij idea隐藏.iml和.idea等自动生成文件的问题

    intellij idea隐藏.iml和.idea等自动生成文件的问题

    这篇文章主要介绍了intellij idea隐藏.iml和.idea等自动生成文件的问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-09-09
  • java观察者模式的三种实现方式代码实例

    java观察者模式的三种实现方式代码实例

    这篇文章主要介绍了java观察者模式的三种实现方式代码实例,观察者模式(又被称为发布-订阅(Publish/Subscribe)模式,属于行为型模式的一种,它定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象,需要的朋友可以参考下
    2023-10-10
  • 使用Spring Boot轻松实现流式AI输出的步骤

    使用Spring Boot轻松实现流式AI输出的步骤

    本文介绍了如何使用Spring Boot和WebFlux实现流式AI输出,通过非阻塞I/O、反应式编程和函数式路由等技术,优化了AI应用的响应速度,提升了用户体验,感兴趣的朋友一起看看吧
    2025-02-02
  • Java实现根据sql动态查询并下载数据到excel

    Java实现根据sql动态查询并下载数据到excel

    这篇文章主要为大家详细介绍了如何使用Java实现根据sql动态查询并下载数据到excel的功能,文中的示例代码讲解详细,有需要的可以参考下
    2024-04-04
  • Java中网络IO的实现方式(BIO、NIO、AIO)介绍

    Java中网络IO的实现方式(BIO、NIO、AIO)介绍

    这篇文章主要介绍了Java中网络IO的实现方式(BIO、NIO、AIO)介绍的相关资料,需要的朋友可以参考下
    2017-03-03
  • 使用maven项目pom.xml文件配置打包功能和静态资源文件自带版本号功能

    使用maven项目pom.xml文件配置打包功能和静态资源文件自带版本号功能

    在Maven项目中,通过pom.xml文件配置打包功能,可以控制构建过程,生成可部署的包,同时,为了缓存控制与版本更新,可以在打包时给静态资源文件如JS、CSS添加版本号,这通常通过插件如maven-resources-plugin实现
    2024-09-09
  • win10设置java环境变量的方法

    win10设置java环境变量的方法

    下面小编就为大家带来一篇win10设置java环境变量的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-01-01

最新评论