从res文件夹加载文件时出现NullPointerException - Java

时间:2015-12-23 19:20:59

标签: java audio

所以我使用这段代码:

    ClassLoader classLoader = getClass().getClassLoader();
    File audioFile = new File(classLoader.getResource("pop.wav").getFile());

    AudioInputStream audioStream = AudioSystem.getAudioInputStream(audioFile);

    AudioFormat format = audioStream.getFormat();

    DataLine.Info info = new DataLine.Info(Clip.class, format);

    Clip audioClip = (Clip) AudioSystem.getLine(info);
    audioClip.open(audioStream);
    audioClip.start();

但每次它给我一个NullPointerException。 文件(pop.wav)位于src / res中。但是如果把它放在我的桌面而不是classLoader.getResource("pop.wav").getFile()我放C:/Users/gebruiker/Desktop/pop.wav就行了。

1 个答案:

答案 0 :(得分:0)

资源文件。

试试这个:

url=$(wget -q -O - /dev/stdout test.web/xml1.xml | sed -n "/\<loc>/{n;p;q}"); 
#do some curl stuff with the $url as you wish

导致该pop.wav的检查路径。有时.jar(/pop.wav)中的绝对路径更容易管理。