java - 如何在现有文件的位置创建新目录?

标签 java file

我是 Java 的新手,所以如果这是一个愚蠢的问题,请原谅我。

基本上,一个文件就是一首歌。我正在使用 JFileChooser 选择多首歌曲。然后我用歌曲数组(它们的文件名和路径)做一些事情。然后我想在歌曲所在的目录中创建 2 个目录,一个用于艺术家姓名的目录,以及一个用于艺术家姓名目录中的专辑名称的目录。然后我想将数组中的文件移动到相册目录。

我很确定我应该使用 mkdirs() 方法。

如何告诉程序在我存储在文件数组中的歌曲所在位置创建目录?我只能找到摆脱扩展名而不是文件名的示例,以便能够使用 mkdirs() 方法的路径。

最佳答案

假设您有一些指向c:\foo\bar\baz\music.wavFile foo,您可以使用File.getParentFile() 获取父目录。 .我建议使用 File 构造函数构造子目录:

File subdir1 = new File(foo.getParentFile(), "mysubdir1");
if(!subdir1.exists()){
    subdir1.mkdirs();
}

因为您确定 subdir1 的父级存在,您可以调用 subdir1.mkdir() 来代替,但是调用不会丢失任何东西mkdirs.

关于java - 如何在现有文件的位置创建新目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6837835/

相关文章:

c - 将文件文本放入 C 中的变量中

c - 在 C 中获取一个文件并返回一个数组

java - 自定义 setMessage 对话框 TextView 无法转换为 java.lang.CharSequence

JavaScript - WebSocket send() 方法未执行

java - 对象引用困惑

windows - 从 Get-ChildItem -Path 返回对象数组

C:读取一个目录下的所有*.txt文件

java - 以 RESTful 方式上传文件?

java - 在没有 main 的情况下执行 jar?

java - 从密码重新生成私钥