首先,我很抱歉,如果之前已经提出过这个问题,或者是否有关于该主题的文档,但我没有找到任何内容。 我想创建一个打开Windows文件浏览器的Windows应用程序,你可以浏览然后选择一个mp3文件,这样你就可以在这个程序中播放它(并重放它)。我知道如何打开文件资源管理器,这是我的代码:
import java.awt.Desktop;
import java.io.File;
import java.io.IOException;
public class Main
{
public static void main(String[] args) throws IOException {
Desktop desktop = Desktop.getDesktop();
File dirToOpen = null;
try {
dirToOpen = new File("c:\\");
desktop.open(dirToOpen);
} catch (IllegalArgumentException iae) {
System.out.println("File Not Found");
}
}
}
但我不知道如何选择一个mp3文件然后获取文件的路径,所以我可以稍后播放。
答案 0 :(得分:2)
我认为你没有接近这个权利。你应该使用像FileDialog这样的东西来选择一个文件:
FileDialog fd = new FileDialog(new JFrame());
fd.setVisible(true);
File[] f = fd.getFiles();
if(f.length > 0){
System.out.println(fd.getFiles()[0].getAbsolutePath());
}
由于您只获得1个MP3文件,因此您只需要从getFiles()
方法返回的File数组的第一个索引。由于它是一个模态对话框,因此应用程序的其余部分将一直等到您选择文件后。如果你想一次获得多个文件,只需循环上述文件数组。
请参阅此处的文档:https://docs.oracle.com/javase/7/docs/api/java/awt/FileDialog.html