Java 通过文件资源管理器获取文件路径
首先,如果以前有人问过这个问题,或者有关于这个主题的文档,我很抱歉,但是我没有发现任何东西。 我想制作一个windows应用程序,打开windows文件资源管理器,您可以浏览并选择一个mp3文件,这样您就可以在此程序中播放(并重播)。我知道如何打开文件资源管理器,这是我的代码:Java 通过文件资源管理器获取文件路径,java,file,filepath,Java,File,Filepath,首先,如果以前有人问过这个问题,或者有关于这个主题的文档,我很抱歉,但是我没有发现任何东西。 我想制作一个windows应用程序,打开windows文件资源管理器,您可以浏览并选择一个mp3文件,这样您就可以在此程序中播放(并重播)。我知道如何打开文件资源管理器,这是我的代码: import java.awt.Desktop; import java.io.File; import java.io.IOException; public class Main {
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文件,然后获得文件的路径,这样我以后可以播放它。我认为你没有做到这一点。您应该使用类似文件对话框的方式来选择文件:
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()
方法返回的文件数组的第一个索引。由于它是一个模式对话框,应用程序的其余部分将等到您选择文件之后。如果您想一次获取多个文件,只需循环上述文件数组
请参阅此处的文档:并检查文件数组的大小-它可能是0。@MikeBaranczak感谢您的提醒。有点懒是的我不知道FileDialog。这是一个很好的解决方案。非常感谢@A.Sharma我想补充一点,您必须通过
FileDialog.setMultipleMode(bool)设置多个文件但是,这仅适用于JDK7及以上版本。