我有一个 sql 表,其中包含使用以下 python 命令生成的 blob:sqlite3.Binary(numpy.float64(array)) 或 sqlite3.Binary(array)。
我保存了数据库,现在我想用 java 中的 JDBC 加载它。似乎不推荐使用 getBlob 方法,但我可以使用 getBytes("myarray") 来检索数组。从那时起,我不清楚如何让我的花车或双打回来。我在互联网上发现了几个或多或少相同的“解决方案”。目前,我使用类似于下面加入的方法,但它没有为我提供预期的浮点值。我做错了什么或者我忘记了什么?
static float[] ConvertByteArrayToFloat(byte[] bytes)
{
float[] floats = new float[bytes.length / 8];
ByteBuffer buf2 = ByteBuffer.wrap(bytes);
for (int i = 0; i < floats.length; i++){
floats[i] = buf2.getFloat(i*8);
}
return floats;
}