我正在尝试在 Android 中将 float[] 转换为 byte[]。我查看了有关 stackoverflow 的其他问题和答案,但没有一个有帮助,因此我决定实施自己的解决方案。我尝试过的方法是:
byte[] data = some data;
ByteBuffer buffer = ByteBuffer.allocate(data.length);
buffer.put(data);
FloatBuffer fBuffer = buffer.asFloatBuffer();
float[] dataConverted = fBuffer.array();
但是,例外:
java.lang.UnsupportedOperationException
at java.nio.ByteBufferAsFloatBuffer.protectedArray(ByteBufferAsFloatBuffer.java:128)
at java.nio.FloatBuffer.array(FloatBuffer.java:101)
从线:
float[] dataConverted = fBuffer.array();
一直被抛出,我不知道为什么。有人可以帮助解释为什么抛出这个异常吗?会有很大帮助吗?