public String toBinary(String str) {
char[] strChar = str.toCharArray();
String result="";
for (int i = 0; i < strChar.length; i++) {
result += Integer.toBinaryString(strChar[i]);
}
return result;
}
用这个方法倒是可以出来中文的二进制字符,但是,感觉不太正确,和教材上面的不一样,例如,金(1011110111110000),我用上面的转换出来的是:1001000111010001 ,忘高手解答,谢谢!
char[] strChar = str.toCharArray();
String result="";
for (int i = 0; i < strChar.length; i++) {
result += Integer.toBinaryString(strChar[i]);
}
return result;
}
用这个方法倒是可以出来中文的二进制字符,但是,感觉不太正确,和教材上面的不一样,例如,金(1011110111110000),我用上面的转换出来的是:1001000111010001 ,忘高手解答,谢谢!
解决方案 »
- 如何用swing实现jtable的列合并
- 求助:关于jpanel获取的问题
- Java中的字符串末尾有没有“\0”?
- 求解2道编程入门必做题(用Java)
- 日期字符串"2007-2-1 11:23:04" 转换成 "Thu, 1 Feb 2007 11:23:04 +0800"
- [求助]数组问题
- --------java中怎样通过命令行启动应用程序-------
- 谁有关于HttpClient 里面使用 Session 的例子代码?
- 100分求用java对zip解压时的中文文件名乱码问题!!!
- 创建对象的过程是违背开闭原则和依赖倒置原则,求解
- 谁能做出这个题?
- 前几天把编程环境转到linux了,遇到些源文件乱码问题,结果自已给解决了,于是贴出来,让大家提些意见~~~
public static void main(String[] args){
String str = "金";
byte[] b = str.getBytes();
for(int i=0;i<b.length;i++){
System.out.println(Integer.toBinaryString(b[i]&0xff));
}
}
这样转。
public String toBinary(String str) {
String result = "";
byte[] b = str.getBytes();
for (int i = 0; i < b.length; i++) {
result += Integer.toBinaryString(b[i] & 0xff);
}
return result;
}
转换方法应该是这样的,结果为“金” = 111010011000011110010001 和你说的那个“金(1011110111110000)”也不一样!!
不知道是什么原因!
这样好像有点麻烦哦,呵呵 非常笨的方法...