破解小米电视背面 散热孔的含义

[img]http://www.gfan.com/html/uploads/allimg/130922/2249464-1309221Z625-50.jpg[/img]
小米电视背面散热孔用一组01的二进制表示一个汉字。今天就来解密一下,看表示什么。

//2进制转成汉字
public static String from2xToString(String x2String,String encode) throws UnsupportedEncodingException{
//System.out.println(x2String);
int a1=Integer.valueOf(x2String.split(" ")[0], 2);
int a2=Integer.valueOf(x2String.split(" ")[1], 2);
return new String(new byte[]{(byte) a1,(byte) a2},encode);
}

//二进制字符串0和1互转 ,有时候1和0 表示可以相反的意思,用这个方法转一下
private static String x2reverse(String x2String) {
StringBuilder sb=new StringBuilder();
for(char c:x2String.toCharArray()){
if(c=='0') sb.append('1') ;
else if(c=='1') sb.append('0');
else sb.append(c);
}
return sb.toString();
}

public static void main(String[] args) throws UnsupportedEncodingException {
String allStr="00101111 01011110;"+
"00111100 00101000;"+
"01001010 00011000;"+
"00110101 00101100;"+
"00110001 01010101;"+
"01001000 01011101;"+
"00110110 00101010;"+
"01001001 00000111;"+
"00110110 00000101;";
String[] x2StrArray=allStr.split(";");
for(String str:x2StrArray){
System.out.print(from2xToString(x2reverse(str.replaceAll(";", "")),"GBK"));
}
}


因为看时候以为中间有个横线表示1,其实表示0,所以用x2reverse转换了一下!
好了,跑出的结果是:
小米电视为发烧而生

下面的散热孔表示的是"小 米","电 视",有个只有8个孔的表示的是空格!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值