2014-06-23 124 views
0

好吧,我在一個資源文件中創建了一個.wav,我稱之爲聲音。我想要的文件名的路徑是/music/sound/One.wav。我試圖用我在舊資源路徑中取代它,當我沒有在資源文件中使用它時。我想這樣做,所以我可以製作一個jar文件並讓人們播放它。我有的代碼部分是:如何在資源文件中獲取/調用.wav的路徑

public class AL implements ActionListener { 

@Override 
public void actionPerformed(ActionEvent e) { 
    // TODO Auto-generated method stub 
    InputStream in; 

    try { 

     String wav = "C:\\Users\\Mike\\workspace\\music\\sound\\One.wav"; 
     in = new FileInputStream(wav); 
     AudioStream audio = new AudioStream(in); 
     AudioPlayer.player.start(audio); 
    } catch (IOException e1) { 
     // TODO Auto-generated catch block 
     e1.printStackTrace(); 
    }}} 

我一直在閱讀和方式有關獲取類和資源,但沒有運氣。幫助會很好,預先感謝。

回答

0

嘗試做

try (InputStream in = this.getClass().getResourceAsStream("sound/One.wav")) { 
    if (in != null) { 
     AudioStream audio = new AudioStream(in); 
     AudioPlayer.player.start(audio); 
    } 
} 

或者只是"One.wav",這取決於你如何設置你的classpath。由於這是在Eclipse中,因此您可能需要sound作爲源目錄。將此遷移到jar時,請確保它在該路徑中包含sound/One.wavOne.wav

+0

像下面我發佈的代碼,我改變它。我知道文件的位置是正確的,因爲在我改變它之前,我確實發音/ One.wav。當我點擊開始後用什麼貼都沒有發生。我似乎得到一個空指針異常。 – Kasarrah

相關問題