当前位置: 首页 > 编程笔记 >

Java字符串转成二进制码的方法

颛孙晗昱
2023-03-14
本文向大家介绍Java字符串转成二进制码的方法,包括了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码表可得对应字符

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。

 类似资料:
  • 问题内容: 我需要将二进制字符串转换为十六进制字符串,但是我有问题。我通过这种方法将二进制字符串转换为十六进制字符串: 没关系!但是我丢失了字符串左侧的零。例如: 该方法返回此:123456789ABCDEF,但我想返回此: 00000123456789ABCDEF 问题答案: 而不是我将使用解析值,然后以所需的宽度(在您的示例中为21)输出值:

  • 问题内容: 我也想将我的二进制(在字符串中)转换为十六进制字符串,这只是一个程序片段,因为该程序只是另一个更大程序的一部分: 问题是我不知道填充是否有效,但是我确定该程序返回了二进制字符串的错误十六进制转换,我正在尝试这样做: http://www.wikihow.com/Convert-Binary-to- Hexadecimal PS:我需要实现它(不使用任何内置函数) 问题答案: 如果您不必

  • 问题内容: 我已经阅读了有关该主题的几篇文章,但是所提供的代码(有时是片段)都没有帮助我解决转换这样的二进制字符串的简单问题: 插入文本字符串早安 我可能无法将我在stackoverflow中可用的链接中找到的代码片段放在一起。有人会这么友好地给我完整的代码吗?假设我有一个输入字符串(文本)来自我正在通过“ gettext()”访问的JTextarea,例如text = tTextarea.get

  • 假设我有以下字符串: 如何将其转换为二进制数(0和1)?诀窍在于:我不允许使用内置方法进行转换。这必须用数学方法来完成。我不知道从哪里开始。谁能给我指出正确的方向吗? 编辑1:我看过这个问题,人们建议使用getBytes(字符串)、字符集UTF-8,我nteger.toBinaryString。我不允许使用任何这些方法进行转换。我也没听说过36垒。

  • 我如何将一个写为二进制的字符串转换为二进制(字节数组)? 如果我有一个字符串: 下面是当我将二进制设置为字节数组时发生的情况(字节数组返回48,这是ASCII) 我不擅长解释,所以希望上面的例子足以告诉你我想要什么。

  • 问题内容: 我有一个二进制字符串,如下所示: 我希望我的INT的值是代替 实现此目标的最佳方法是什么? 问题答案: 使用Where 是您的方案无法表示的最小正数。(在这种情况下为8,因为为7且为负。) 大于,所以你减去的,给。