有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

在java中将字符串转换为音频输入

我想用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(字符串)的方法”


共 (1) 个答案

  1. # 1 楼答案

    i think you are after this one.

    AudioSystem.getAudioInputStream(File file)
    

    您应该使用的其他功能:

    AudioSystem.getAudioInputStream(targetEncoding, sourceStream)
    

    您需要在其中传递编码。或:

    AudioSystem.getAudioInputStream(targetFormat, sourceStream)
    

    这需要传递AudioFormat

    Check the JAVADOc.