• Java将字符串转成二进制码


    Java将字符串转成二进制码

    public void toBinary(){
        String str = "王雪";
        char[] strChar=str.toCharArray();
        String result="";
        for(int i=0;i<strChar.length;i++){
            result +=Integer.toBinaryString(strChar[i])+ " ";
        }
        System.out.println(result);
    }

    输出结果为:111001110001011 1001011011101010 

    Java将二进制码转成字符串

    //将二进制字符串转换成int数组
        public int[] BinstrToIntArray(String binStr) {       
            char[] temp=binStr.toCharArray();
            int[] result=new int[temp.length];   
            for(int i=0;i<temp.length;i++) {
                result[i]=temp[i]-48;
            }
            return result;
        }
        
        //将二进制转换成字符
         public char BinstrToChar(String binStr){
             int[] temp=BinstrToIntArray(binStr);
             int sum=0;
             for(int i=0; i<temp.length;i++){
                 sum +=temp[temp.length-1-i]<<i;
             }   
             return (char)sum;
        }
        public void BinstrToStr(){
            String binStr = "111001110001011 1001011011101010 ";
            String[] tempStr=binStr.split(" ");
            char[] tempChar=new char[tempStr.length];
            for(int i=0;i<tempStr.length;i++) {
               tempChar[i]=BinstrToChar(tempStr[i]);
            }
            System.out.println(String.valueOf(tempChar));
         }

    根据Unicode码表,将二进制码转换成字符

    1、先将二进制转换成十六进制

    111001110001011   -->0111 0011 1000 1011 不够四位则高位补零(左边) -->0x738b

    1001011011101010  -->1001 0110 1110 1010 -->0x96ea。然后查Unicode码表可得对应字符

  • 相关阅读:
    并发和并行的区别
    fiddler-打断点(bpu)
    fiddler操作
    fiddler手机抓包
    面试题1
    Linux查看日志常用命令
    HTMLTestRunner
    mysql数据库无法插入特殊字符报错
    mybatis解决属性名和数据库字段名不一致问题
    Vue路由的使用简单实例
  • 原文地址:https://www.cnblogs.com/StanLong/p/6906814.html
Copyright © 2020-2023  润新知