Java-将文本(字符串)转化成二进制字符

今天在测试MySQL的Blob相关类型时,这种一般存放的是二进制文本,所以就想插入二进制文本。

package com.aaa.dao;

public class aaa {
   public static void main(String[] args) {

       //转换就维护main方法里面的两个注释就行



       /***
        * 1.字符串转二进制开始
        * **/
     /*  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);*/
       /**
        *1二进制转字符串结束
        * **/

       /**
        *2. 二进制转字符串开始
        * */

       String binStr = "111011100011111 110110 1111111100001100 100111101010101 1000110110000101 101100101000111 100111011100101 101010000001110 1000101111110100 1000101111011101 101110000110001 111010100101000 100111010001100 1000111111011011 101001000110110";
       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));

       /**
        * 2二进制转字符串结束
        * */
}


   //将二进制转换成字符
   public static 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;
  }
 //将二进制字符串转换成int数组
   public static 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;
   }
}

  

posted @ 2022-02-15 18:31  业余砖家  阅读(3470)  评论(0编辑  收藏  举报