Java 读取音频文件时出现空指针异常

Java 读取音频文件时出现空指针异常,java,audio,jar,executable-jar,Java,Audio,Jar,Executable Jar,我制作了一个程序来读取音频文件。 起初,我使用绝对路径进行开发,因为它更容易开发。 然后我将其压缩到相对路径,因为我想将其压缩到*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[] liesAudi

我制作了一个程序来读取音频文件。 起初,我使用绝对路径进行开发,因为它更容易开发。
然后我将其压缩到相对路径,因为我想将其压缩到
*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;   
    }
现在代码是:

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;   
    }
私人音频剪辑[]liesAudioDateien(文件输入文件){
文件[]日期文件数组;
音频剪辑[]轨道;
dateFileArray=inputFile.listFiles();
tracks=新的音频剪辑[dateFileArray.length];
对于(int i=0;i
inputFile.listfiles()
返回null,因为我的路径似乎不正常。 但是我的路径是可以的,因为我让它打印在命令行上。
D:\Eclipse\MyProjekt\dist\MyProject.jar\audio
。 在NetBeans中,它确实起作用。
如果我创建一个jar文件,它就不起作用。

我已经尝试过:

  • D:\Eclipse\MyProjekt\dist\MyProject.jar\audio\
  • /
    代替
    \

  • 您确定这是正确的文件路径吗

    D:\Eclipse\MyProjekt\dist\MyProject.jar\audio
    
    音频目录位于名为MyProject.jar的文件夹中


    如果您的音频文件在.jar文件中,您不能使用
    file
    类列出它们。您需要做的是。

    如何执行您的jar?我的jar文件调用MyProjekt.jar。这是错误的?在MyProjekt.jar中包含“音频、源、图像”