audioInputStream = AudioSystem.getAudioInputStream(soundFile); // 从文件中获取数据流
AudioFormat format = audioInputStream.getFormat(); // 获取文件格式
读取音频文件获得音频流的时候会有一个下面的异常
翻译出来就是无法从文件获得文件输入流。
那这个是为什么呢?
我们从相关文档中找到这个方法。
这个UnsupportedAudioFileException这个异常就是我们报的这个异常。
显示未指向系统可以识别的有效音频文件,也就是我们的文件系统没有办法识别,我们继续
往下找真正原因。
也就是说我们所用的音频文件格式不支持,下面是我使用的音频文件格式:
static final String BACKGROUND = "background.wav";
但是查询支持的音频格式发现是支持wav格式的文件的,那为什么导致还会报这个异常呢。
解决办法:
后面我用Au重新格式化了一下这个wav文件之后发现就可以使用了。
我经过思考应该是自己乱改文件的后缀名导致的原因,之前这个文件是MP3的格式,我直接修改文件后缀将其改成wav格式,导致文件内部的格式发生错误。
所以这里我劝大家不要随意修改文件的后缀。