字符串到byte []和byte []到String

时间:2015-12-22 15:33:40

标签: java string binary byte

我正在处理一些代码,它将String转换为byte [],然后从byte []转换为String(String是原始String的二进制表示),然后我想要做一些事情那个字符串。
当我尝试将String转换为byte []和byte []为原始字符串时,某些东西不起作用。

        byte[] binary = "Example".getBytes(StandardCharsets.UTF_8);
        String x = new String();
        for(byte b : binary)
        {
                x += Integer.toBinaryString(b);
        }
        byte[] b = new byte[x.length()];
        for (int i = 0; i < b.length; i++) 
        {
            b[i] = (byte) (x.charAt(i) - '0');
        }
        String str = new String(b, StandardCharsets.UTF_8);
        System.out.println(str);

正如您在该代码中所看到的,我正在使用一个名为“Example”的示例字符串,而我正在尝试执行上面所写的操作。
当我打印str时,我没有得到“示例”字符串 有谁知道这样做的方法?我在Stack Overflow上搜索了一个解决方案,但我无法找到解决方案。

1 个答案:

答案 0 :(得分:-1)

这应该没有中间部分。

byte[] binary = "Example".getBytes(StandardCharsets.UTF_8);
String str = new String(binary, StandardCharsets.UTF_8);
System.out.println(str);