java种常常遇到字符串转换问题,可以先把字符串转换成byte 数组,再转换成字符串,来解决问题
String s1="张三"; //定义一个字符串张三
try {
byte b[]=s1.getBytes("UTF-8"); //UTF-8的方式取出
String s2=new String (b,"UTF-8"); //UTF_8的方法转成字符串
System.out.println(s2);
System.out.println( new String(s2.getBytes("GBK"),"GBK")); //同样的方式转换成GBK编码
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
这里涉及到个小问题,字符串和byte数组互转的问题
byte bs[]= {98,97,65,67,92,76}; //随便定义个byte数组
String s =new String (bs); //String 构造方法来把byte数组转换成字符串
byte bc[]=s.getBytes(); //String对象的getBytes()方法来转换成byte数组