1, 获取big5
2, 获取ba[i](共32位)的后8位,
3, 后16位,上面说的位是bit,也就是一个0或1for(int i=0;i<1000;i++){
String s=Integer.toHexString(i);
while(s.length()<4){
s="0"+s;
}
System.out.println(s);
}
2, 获取ba[i](共32位)的后8位,
3, 后16位,上面说的位是bit,也就是一个0或1for(int i=0;i<1000;i++){
String s=Integer.toHexString(i);
while(s.length()<4){
s="0"+s;
}
System.out.println(s);
}
解决方案 »
- 各位大虾帮个忙啊 多线程搞不懂 帮忙看看
- 关于一个java GUI工具的问题,这个工具很优秀.AbaGUIBuilder
- Java语言动态演示出选择排序的过程,要求用图形界面。
- 请问一下 setBackingStoreEnabled 这个过期的方法 用什么方法代替啊
- 从输出流中读字符串怎么会出错?在线等,求解答,十分感谢!!
- 求JAVA类库组织框架图
- Hash Tables 如何理解
- oracle语句 start with ....connect by中怎样对子结点排序??
- VC++--->VJ++?
- 字符串做contains()比较时,怎么不区分大小写
- 字符与字节的区别在何处呢
- Java Advanced Imaging中的问题
//把字符串按照 BIG5 编码方式 变成 byte 数组
Integer.toHexString((int)ba[i]&0xff);
//&0xff 用 11111111 填充高位 ,变成双字节的编码
Integer.toHexString((int)s.charAt(i)&0xffff);
// 用 ff 填充高位,变成双字的编码
Integer.toHexString((int)s.charAt(i)&0xffff);
与(AND)运算&
a&b
只有a,b都是1的时候上述表达式的植才是1
否则就是0
ff:11111111
按照上述运算标准就实现了用11111111填充高位
填充高位的方法就是这样的
1个字的长度是8bit,双字就是16bit
ffff:1111111111111111
这样用&就能实现