0

给定Path指向文件夹的对象,例如c:\pluto,如何在 Java 中生成一个新的空文件夹而不考虑文件夹名称?

例如,当我调用一个方法时,比如说X(),它应该为 path 创建一个新文件夹c:\pluto\new folder。如果我再按它必须创建c:\pluto\new folder (1),再按我必须获得c:\pluto\new folder (2),等等。

为什么我需要与操作系统交互?因为标准新文件夹的名称会随操作系统和操作系统语言而变化。

老实说,我没有 Java 应用程序与操作系统交互的经验。

4

1 回答 1

0

用于String.valueOf(System.nanoTime)生成文件夹名称。它将为每个呼叫生成唯一的文件夹名称。然后将此文件夹名称与基本路径连接起来,瞧,您就有了一个唯一的文件夹名称。

用于File.separator分隔基本路径和生成的文件夹名称。

更新:

如果文件夹名称将通过用户界面显示/选择,则上述方法可能不适合。然后使用面具和数字。对于面具,让它成为new folder (%n%)。将在哪里%n%生成数字或日期字符串。

要检查代码中的文件夹是否存在,请使用以下方法:

private static boolean doesFolderExist(String folderPath) {
    final File folderHandler = new File(folderPath);
    return folderHandler.isDirectory();
}

但从我的角度来看,我会要求用户为新文件夹命名,而不是自动生成它。只有当用户不想为新文件夹输入名称时,只有在这种情况下,我才会自动生成它。文件夹存在检查将在任何情况下运行。

于 2013-06-20T10:42:12.397 回答