如何将heapbytebuffer转换为“File”?

时间:2016-03-16 19:18:35

标签: java

我在变量“myByteBuffer”中有一个heapbytebuffer,它代表我想播放的音频wav。我看到AudioInputStream是一种使用AudioSystem.getAudioInputStream(soundFile)播放文件的方法。由于它接受“文件”,如何将我所拥有的heapbytebuffer转换为“文件”?

1 个答案:

答案 0 :(得分:1)

除非您(或想要保存)物理文件,否则不要使用File重载。只需获取您的数据并将其包装在InputStream

AudioSystem.getAudioInputStream(new ByteArrayInputStream(myByteBuffer.array()))

这假设您正在使用完整缓冲区。如果没有,您可以根据需要切出您正在使用的部分。有关详细信息,请参阅here