1.用python写个脚本插入数据,python的字节序应该和C++一致的,但python不太熟,为了赶时间放弃此方案
2.修改java代码,增加大端转小端的功能,觉得此方案花费时间不多,靠谱点!
于是写了所谓的第一版,就是想通过将数据写入ByteArrayOutputStream中后调用其toArray方法转换为二进制数组后再将此数据顺序颠倒后插入数据库中,现在想想此方法挺傻B的,单纯的认为转化下位置就OK了,写到一半觉得很麻烦,于是想到万能的谷歌,搜索后发现有人推荐使用ByteBuffer,但没找到合适的例子,于是研究了下ByteBuffer的方法终于成功了,字节序转换部分的代码示例如下:
/**
* 字段包含两个long型(长度16),一个float型(长度4),一个长度为5的float数组(长度20)
* 即总长度=16+4+20
* 初始化一个ByteBuffer,长度为40,且字节序设置为小端,然后将要插入的数据放到ByteBuffer中
*/
ByteBuffer buffer=ByteBuffer.allocate(40).order(ByteOrder.LITTLE_ENDIAN);
buffer.putLong(IID);
buffer.putLong(GID);
buffer.putFloat(similarity);
buffer.putFloat(f[0]);
buffer.putFloat(f[1]);
buffer.putFloat(f[2]);
buffer.putFloat(f[3]);
buffer.putFloat(f[4]);
//此方法并非真的清空,只是重新的位置设为0
buffer.clear();
//将ByteBuffer中的数据通过get方法写入一个二进制数据,将此数组插入数据库中即可
buffer.get(gfresult);
相关推荐
1.浮点型数据转16进制数。 2.支持大小端格式选择。 3.支持输入非法数据判断。
二进制文件大小端转换工具,单独工具;二进制文件大小端转换工具,单独工具;二进制文件大小端转换工具,单独工具
本程序主要是将十进制转十六进制函数(包括正负整数及小数),并根据设置显示大小端。输入参数说明:x表示十进制数,N表示最后转换成的十六进制数的位数(字节数),flag表示大小端(1是小端,2是大端)
java实现使用javolution完成数据接收过程中大小端转换的问题
关于大端小端名词的由来,有一个有趣的故事,来自于Jonathan Swift的《格利佛游记》:Lilliput和Blefuscu这两个强国在过去的36个月中一直在苦战。
16进制单精度(32位)浮点型转换器,含有大端(左高位)、小端(右高位)
如何提取大端存储(Big-Endian)二进制文件中的数据,并输出到txt中。matlab实现
本程序主要是将十进制转十六进制函数(包括正负整数及小数),并根据设置显示大小端。...输入参数说明:x表示十进制数,N表示最后转换成的十六进制数的位数(字节数),flag表示大小端(1是小端,2是大端)
本资源代码是自己编写解决获取的数据是大端格式转化为小端格式,并在PC机查看*.jpg文件,希望对大家有用。
本文主要描述大端小端的概念,分类和区别,还讲述了他们的由来,以及各自的优缺点,对初识者具有很大的帮助
所谓的大端模式,是指数据的低位(就是权值较小的后面那几位)保存在内存的高地址中,而数据的高位,保存在内存的低地址中,这样的存储模式有点儿类似于把数据当作字符串顺序处理:地址由小向大增加,而数据从高位往...
字节序转换辅助类,short大小端转换,ushort大小端转换,int大小端转换,uint大小...short类型 小端转大端,short类型 大端转小端,int类型 小端转大端,int类型 大端转小端,long类型 小端转大端,long类型 大端转小端
javaUDP实现服务器客户端大小写的转换
大端和小端的区别,数据在内存里面存放的方式,源代码讲解,发上来大家一起学习下!
大端 小端
运行程序,可判识并输出程序所在平台的存储方式,是大端还是小端。
大端机小端机检查器-用于检查PC是大端机还是小端机
提供一个大小端转换的类,可以转换short int float double类型,提供一个大小端转换的类,可以转换short int float double类型,提供一个大小端转换的类,可以转换short int float double类型
绿色小工具,支持单精度、双精度与十六进制互转,并支持大端、小端存储模式
描述大端、小端模式,给出了如何判断CPU是哪种模式的代码!