我正在开发一个程序,它将真正旧的 Open Access 4 .df 文件转换为其他格式并创建数据库脚本 - 我已经能够转换除十进制类型之外的所有可能类型。我发现字节顺序必须是 80 位扩展精度。我已经尝试自己进行转换,但我无法进行从 80 位扩展精度(https://en.wikipedia.org/wiki/Extended_precision#x86_Extended_Precision_Format)到字符串和字符串到 80 位扩展的转换Java中的精度。
- 例子:
价值:1,235
来自 df 文件的十六进制:40 00 9e 06 52 14 1e f0 db f6
- 例子:
价值:0,750
来自 df 文件的十六进制:3f ff c0 00 00 00 00 00 00 00
也许有人可以帮助转换?
此致
@EJP 评论:好吧,我扔掉了最后 16 位,所以我得到了 3f ff c0 00 00 00 00 00 关于(Java - 将十六进制转换为 IEEE-754 64 位浮点数 - 双精度)我尝试将其转换为
String hex = "3fffc00000000000";
long longBits = Long.valueOf(hex ,16).longValue();
double doubleValue = Double.longBitsToDouble(longBits);
但结果是 1,984375 而不是 0,750