首页 > 解决方案 > Java 跨平台文件操作

问题描述

我在 netbeans + Ubuntu 中开发了一个软件,然后使用转换器软件将 netbeans 的可运行 .jar 文件转换为 .exe 文件。我用了:

File f = new File("./dir/fileName");

这在 Ubuntu 中运行良好,但在 Windows 中会出错,因为两个操作系统的目录模式不同。

标签: java

解决方案


绝对路径不应该被硬编码。它们应该例如从配置文件或用户输入中读取。

然后你可以使用 NIO.2 File API 来创建你的文件路径:Paths.get(...)(java.io.File 是一个遗留 API)。

在您的情况下,它可能是:

Path filePath = Paths.get("dir", "fileName");

推荐阅读