0

Javaで音を鳴らしたい。

音の静的な場所を含む文字列がありますString s1 = "../files/song.wav";
文字列へのパスを渡すファイルがありますFile yourFile = new File(s1);

そして、私は私の方法を持っています:

public void playCorrectSound(String song) throws IOException, LineUnavailableException  {
    try {
        AudioInputStream audio = AudioSystem.getAudioInputStream(Clip.class.getResourceAsStream(correctSong));
        Clip clip = AudioSystem.getClip();
        clip.open(audio);
        clip.start();
    } catch (Exception e) {
    }
}

この行は、(曲) を互換性のあるタイプに変換する必要があるため、エラーAudioInputStream audio = AudioSystem.getAudioInputStream(song);になりますが、どうすればよいですか?

例外は「getAudioInputStream(String) に適したメソッドが見つかりません」

4

1 に答える 1

0

私はあなたがこれを求めていると思います。

AudioSystem.getAudioInputStream(File file)

使用する必要がある他の関数:

AudioSystem.getAudioInputStream(targetEncoding, sourceStream)

エンコーディングを渡す必要がある場所。また:

AudioSystem.getAudioInputStream(targetFormat, sourceStream)

AudioFormat を渡す必要があります。

JAVADOc を確認してください。

于 2013-10-21T17:27:50.690 に答える