[Java] Java中的byte与其他类型转换编码

char、byte、string三者的转换

char byte string三者中,byte是用8bit存储的,其余二者会依据编码不同存储单位不同。通常情况下,我们在进行IO操作的时候,写入的都是byte,那么就需要将已有的char和strnig转换为byte存入。在读出的时候在转换成char或string。这中间就涉及了编码解码问题。只有正确的进行编码与解码才可以将想要的内容存入与读出。

char与string转换

如果想要把char转成string并拼接可以:

  • 先拼接char,再转成一个string
  • 先转成多个string,再利用string构造stringbuilder进行字符串拼接
        char[] chars = new char[20];
        chars[0] = 'a';
        chars[1] = '我';
        String s = new String(chars, 0, 2); //char转string
        s.getChars(0,2,chars,2);
        System.out.println(chars);  //string转char

string与byte转换

        String s =new String("hello world");
        System.out.println(s);
        try {
            byte[] bytes=s.getBytes("ascii");   //按照ASCII编码转为byte
            for (int i=0;i<bytes.length;i++){
                System.out.println(bytes[i]);
            }
            String scpoy=new String(bytes,0,bytes.length,"ascii");  //byte按照ASCII解码转化为string
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }

猜你喜欢

转载自blog.csdn.net/eternally123/article/details/80230154