-1

我做了一个程序来读取音频文件。起初我是用绝对路径来做的,因为它更容易开发。
然后我将它转换为相对路径,因为我想将它压缩为*jar. 所以我编写了这个方法(起初只是简短的代码:

1.: at first I make a FileArray to save the Files
2.: make the array to save the AudioClip
3.: for loop to read the Clips

现在代码:

    private AudioClip[] liesAudioDateien (File inputFile) {
        File[] dateFileArray;
        AudioClip[] tracks;
        dateFileArray = inputFile.listFiles();
        tracks = new AudioClip[dateFileArray.length];
        for (int i = 0; i < tracks.length; i++) {
            if (dateFileArray[i].isFile()) {
                try {
                    tracks[i] = Applet.newAudioClip(dateFileArray[i].toURL());
                } catch (IOException ex) {
                    System.err.println("Error!: -- " + ex.toString());
                }
            }

        }
        return tracks;   
    }

inputFile.listfiles()返回null,好像我的路径不正确。但是我的路径还可以,因为我让它在命令行上打印。 D:\Eclipse\MyProjekt\dist\MyProject.jar\audio. 在 NetBeans 中,它确实有效。If I make a jar file, it doesn't work.

我已经尝试过:

  1. D:\Eclipse\MyProjekt\dist\MyProject.jar\audio\
  2. /代替\
4

1 回答 1

1

你确定这是正确的文件路径吗?

D:\Eclipse\MyProjekt\dist\MyProject.jar\audio

音频目录位于名为 MyProject.jar 的文件夹中?

如果您的音频文件在 .jar 文件中,则您不能使用File该类来列出它们。相反,您需要做的是从 .jar 文件中读取条目,就像在这个问题中一样

于 2013-03-24T18:23:08.300 回答