public static String byteToHexString(byte[] arr) { StringBuffer sb = new StringBuffer(arr.length * 2); sb.append("00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 text\n"); sb.append("-------------------------------------------------------\n"); for (int i = 0; i < arr.length; i++) { String hex = Integer.toHexString(0xFF & arr[i]).toUpperCase(); if (hex.length() == 1) { hex = "0" + hex; } sb.append(hex).append(' '); if ((i + 1) % 16 == 0) { //TODO sb.append('\n'); } } sb.append('\n'); return sb.toString(); }
测试:
import java.math.BigInteger; import java.util.BitSet; /** * 测试bitset 的异或操作能不能正确的的看出两个bigInteger的bit 位之间的差异 * @author leo * */ public class TestBitSetAndBigInteger { /** * @param args */ public static void main(String[] args) { BigInteger i1 = new BigInteger("1020"); BigInteger i2 = new BigInteger("1021"); BigInteger i3 = new BigInteger("10131036798906733839"); BigInteger i4 = new BigInteger("10131036798906734863");//i3 + 1024 BitSet s1 = BitSet.valueOf(i1.toByteArray()); BitSet s2 = BitSet.valueOf(i2.toByteArray()); BitSet s3 = BitSet.valueOf(i3.toByteArray()); BitSet s4 = BitSet.valueOf(i4.toByteArray()); System.out.println("i1:::::\n" + Utils.byteToHexString(i1.toByteArray())); System.out.println("s1:::::\n" + Utils.byteToHexString(s1.toByteArray())); System.out.println("i2:::::\n" + Utils.byteToHexString(i2.toByteArray())); System.out.println("s2:::::\n" + Utils.byteToHexString(s2.toByteArray())); System.out.println("i3:::::\n" + Utils.byteToHexString(i3.toByteArray())); System.out.println("s3:::::\n" + Utils.byteToHexString(s3.toByteArray())); System.out.println("i4:::::\n" + Utils.byteToHexString(i4.toByteArray())); System.out.println("s4:::::\n" + Utils.byteToHexString(s4.toByteArray())); BitSet s11 = (BitSet) s1.clone(); s11.xor(s2); BitSet s22 = (BitSet) s2.clone(); s22.xor(s1); System.out.println("s1 xor s2 = " + s11.cardinality()); System.out.println("s2 xor s1 = " + s22.c
i1::::: 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 text ------------------------------------------------------- 03 FC s1::::: 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 text ------------------------------------------------------- 03 FC i2::::: 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 text ------------------------------------------------------- 03 FD s2::::: 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 text ------------------------------------------------------- 03 FD i3::::: 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 text ------------------------------------------------------- 00 8C 98 AC 4A C5 3F 15 0F s3::::: 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 text ------------------------------------------------------- 00 8C 98 AC 4A C5 3F 15 0F i4::::: 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 text ------------------------------------------------------- 00 8C 98 AC 4A C5 3F 19 0F s4::::: 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 text ------------------------------------------------------- 00 8C 98 AC 4A C5 3F 19 0F s1 xor s2 = 1 s2 xor s1 = 1 s3 xor s4 = 2 s4 xor s3 = 2
相关推荐
7.readline:GNU按行读取接口 8.rlpleter:GNU按行读取的实现函数 二进制数据 9.struct:将字节解析为打包的二进制数据 10.codecs:注册表与基类的编解码器 数据类型 11.datetime:基于日期与时间工具 12.calendar:...
1.3 读入和写出二进制数据 1.3.1 随机访问文件 1.4 ZIP文档 1.5 对象流与序列化 1.5.1 理解对象序列化的文件格式 1.5.2 修改缺省的序列化机制 1.5.3 序列化单例和类型安全的枚举 1.5.4 版本管理 1.5.5 为克隆使用...
该实用程序侦听Mac键盘上的Command-C,并在触发时检查剪贴板中以0x十六进制前缀开头的字符串,并将遇到的所有十六进制代码转换为十进制和二进制。 结果显示在一个简单的对话框中。 该工具将转换屏幕上标识的十六...
对输出数据进行二进制量化 通常情况下,用于测试的输入数据所对应的输出数据不是量化数据,比如说:优、良,或者是一级、二级等等。那么通常我们用二进制来表达,两位数字的二进制可以表示3类(01,10,11),三...
对输出数据进行二进制量化 通常情况下,用于测试的输入数据所对应的输出数据不是量化数据,比如说:优、良,或者是一级、二级等等。那么通常我们用二进制来表达,两位数字的二进制可以表示3类(01,10,11),三...
一个气象数据集 数据的格式 使用Unix工具进行数据分析 使用Hadoop分析数据 map阶段和reduce阶段 横向扩展 合并函数 运行一个分布式的MapReduce作业 Hadoop的Streaming Ruby版本 Python版本 ...
提供单个光谱的二进制文件可以使用软件功能通过 GUI 进行处理,该功能允许选择一个或多个二进制文件以在唯一的 .txt 文件中生成光谱库。 光谱反射率使用“凸包”方法重新校准,以消除凸面形状,这是反射光谱的典型...
这里介绍的工具是一个开源工具(受),它允许提取这些二进制文件中包含的数据。 输出可以格式化以满足您的需要,您可以非常精确地控制要提取的数据量如何使用它? 这是一个命令行程序。 使用“-h”选项运行它会显示...
一个气象数据集 数据的格式 使用Unix工具进行数据分析 使用Hadoop分析数据 map阶段和reduce阶段 横向扩展 合并函数 运行一个分布式的MapReduce作业 Hadoop的Streaming Ruby版本 Python版本 Hadoop Pipes 编译运行 第...
Java波浪文字,一个利用Java处理字符的实例,可以设置运动方向参数,显示文本的字符数组,高速文本颜色,显示字体的 FontMetrics对象,得到Graphics实例,得到Image实例,填充颜色数组数据,初始化颜色数组。...
7、 编写一个程序,将10进制数转换为其它(2-9)进制数。可以将要转换的数重复除以基数,然后讲除的余数按反方向排列来实现; 8、 已知A[n]为正数数组,试写出实现下列运算的递归算法; a. 求数组A中的...
对输出数据进行二进制量化 通常情况下,用于测试的输入数据所对应的输出数据不是量化数据,比如说:优、良,或者是一级、二级等等。那么通常我们用二进制来表达,两位数字的二进制可以表示3类(01,10,11),三...
对输出数据进行二进制量化 通常情况下,用于测试的输入数据所对应的输出数据不是量化数据,比如说:优、良,或者是一级、二级等等。那么通常我们用二进制来表达,两位数字的二进制可以表示3类(01,10,11),三...
扩展标记语言XML是一种简单的数据存储语言,使用一系列简单的标记描述数据,而这些标记可以用方便的方式建立,虽然XML占用的空间比二进制数据要占用更多的空间,但XML极其简单易于掌握和使用。 XML与Access,...
13.4.4 格式化读写函数fscanf和fprintf 201 13.5 文件的随机读写 202 13.5.1 文件定位 202 13.5.2 文件的随机读写 203 13.6 文件检测函数 204 13.6.1 文件结束检测函数 feof函数 204 13.6.2 读写文件出错检测函数 ...
Java波浪文字,一个利用Java处理字符的实例,可以设置运动方向参数,显示文本的字符数组,高速文本颜色,显示字体的 FontMetrics对象,得到Graphics实例,得到Image实例,填充颜色数组数据,初始化颜色数组。...
用户可以指定一个字符串被输出为每个的256个可能的字符码。字符串可以包含嵌入控制字符 ·搜索和替换:用区分大小写的选项。它给出了搜索的长度和替换字符串 – 用于文本替换在二进制文件中免费有用 ·添加一个前缀...
什么是补码、反码,如何求一个二进制数的补码,试求下列各二进制数的补码? 0.11001 -0.11001 0.00001 -0.00001 0.11111 -0.11111 12.在计算机中,字符是怎样表示的,汉字又是怎样表示的? 13.计算机系统包括哪些...
Blister是一个用于操作苹果二进制PList文件格式的Java开源类库(可用于发送数据给iOS应用程序)。 重复文件检查工具 FindDup.tar FindDup 是一个简单易用的工具,用来检查计算机上重复的文件。 OpenID的Java客户端...
Blister是一个用于操作苹果二进制PList文件格式的Java开源类库(可用于发送数据给iOS应用程序)。 重复文件检查工具 FindDup.tar FindDup 是一个简单易用的工具,用来检查计算机上重复的文件。 OpenID的Java客户端...