编码字符串变成字节数组

String-->byte[] :

byte[] getBytes(String charsetName):使用指定的字符集将此 String 编码为 byte 序列,并将结果存储到一个新的 byte 数组中。

解码字节数组变成字符串

byte[]-->String

String(byte[] bytes, String charsetName):通过使用指定的 charset 解码指定的 byte 数组,构造一个新的 String。

示例

import java.util.*;
class EncodeDemo{
	
	public static void main(String[] args)throws Exception{
		encode_2();
	}
	// 多次编码与解码
	public static void encode_2()throws Exception{
		String s="你好";
		System.out.println("s="+s);
		
		byte[] b1=s.getBytes("GBk");	// 使用gbk字符集编码
		
		System.out.println(Arrays.toString(b1));
		
		String s1=new String(b1,"ISO8859-1");	// 使用ISO8859-1字符集解码
		System.out.println("s1="+s1);
		
		byte[] b2=s1.getBytes("ISO8859-1");	// 使用ISO8859-1字符集编码
		System.out.println(Arrays.toString(b2));
		
		String s2=new String(b1,"gbk");	// 使用gbk字符集解码
		System.out.println("s2="+s2);
	}
	// 编码与解码
	public static void encode()throws Exception{
		String s="你好";
		
		byte[] b1=s.getBytes("UTF-8");
		
		System.out.println(Arrays.toString(b1));
		
		String s1=new String(b1,"UTF-8");
		
		System.out.println("s1="+s1);
	}
}

图解

java 字符串加密解密 java 字符串解码_System