java中字符串的编码解码问题

来源:互联网 发布:逆战领枪软件 编辑:程序博客网 时间:2024/05/16 11:14

1.将字符串转换成byte数组再恢复:

byte[] getBytes(String charsetName)

String(byte[] bytes, String charsetName)

或getBytes()

String(byte[] bytes)

2.使用String sun.misc.BASE64Encode.encode(byte[] b)

byte[] String sun.misc.BASE64Decode.decodeBuffer(String str)

将字符串转换成byte[],再转换成ASCII码;恢复时做逆操作。

在字符串转换成byte[]时,尽量用byte[] getBytes(String charsetName)方法,解码时也用相同的charsetName做参数,如果都不charsetName可能会导致一些中文字符不能正确解码。

3.使用java.net.URLEncoder类和java.net.URLDecoder类

它有static方法将字符串转换成‘pplication/x-www-form-urlencoded'格式便于在网络中传播

形如‘%20%35'。

转自

http://blog.163.com/yuruli2050@126/blog/static/38535349200783102116693/