2

Eclipse (Java) でソース パッケージから再生しようとしている mp3 ファイルがありますが、何らかの理由で Eclipse で実行すると正常に再生されますが、.jar から再生しようとすると再生されません。画像は正常に表示されますが、サウンドは表示されません。サウンド ファイルを画像ファイルのように再コーディングする必要があると思いますが、画像のコードがどのようになっているのかわかりません。

JLabel TextBox = new JLabel(new ImageIcon(Toolkit.getDefaultToolkit().getImage(getClass().getResource("/Images/TextBox.png"))));

そしてサウンド

Player player = Manager.createPlayer(new MediaLocator(getClass().getClassLoader().getResource("Sounds/Bonsai.mp3")));

前もって感謝します!

4

2 に答える 2

1

getClass().getClassLoader().getResource(....)

実際に URL を返します。ただし、MediaLocator は jar:file:/ の形式の URL を使用できません。

ファイルをjarから「Temp」ファイルシステムにコピーし、そこからストリームすることをお勧めします。必要に応じて、完了したらいつでも削除できます。

于 2012-10-28T20:35:49.537 に答える
1

リソースをストリームとして取得してみてください。この方法でファイルを取得できます。

InputStream fis = 
    ClassLoader.getSystemClassLoader().getResourceAsStream("/Sounds/bonsai.mp3");
p = new Player(fis);
p.play();
于 2012-10-28T20:39:13.543 に答える