猿问

如果帧大小 > 1,Java AudioInputStream IOException

所以我正在制作一个Java游戏程序,我现在正在给它添加音乐。但是,当我使用 AudioInputStream 时,它在我的程序上不起作用。


    public static void playMusic(String filepath) {

    InputStream music;

    try {

        music = new AudioStream(new FileInputStream(filepath));            

        AudioStream audios = new AudioStream(music);           

        AudioPlayer.player.start(audios);

    } catch (IOException e) {

        JOptionPane.showMessageDialog(null, "Error:" + e.toString());

    }

}

结果是错误:java.io.IOException:如果帧大小> 1,则无法读取单个字节。然后我打开了一个新程序,它运行良好。


    public class PlayMusic {


/**

 * @param args the command line arguments

 */

public static void main(String args[]){

        playMusic("Mars.wav");

    }


    public static void playMusic(String filepath) {

        InputStream music;


    try{

    music = new FileInputStream(new File(filepath));

    AudioStream audios = new AudioStream(music);

    AudioPlayer.player.start(audios);

    } catch(IOException e){

        JOptionPane.showMessageDialog(null,"Error");    

    }

    }

}


我查看了其他一些地方,但他们没有关于我的案例的信息。我有多个课程都连接到我的主课程。当我运行该项目时,它从主运行。


编辑:我只是将代码移到 main 方法的底部,现在它可以工作了。但是,我仍然很好奇为什么要修复它。


缥缈止盈
浏览 111回答 1
1回答
随时随地看视频慕课网APP

相关分类

Java
我要回答