本文实例讲述了JS实现对中文字符串进行utf-8的Base64编码的方法。分享给大家供大家参考,具体如下:
要进行编码的字符串:“select 用户名 from 用户”
使用JAVA进行编码,Java程序:
sql = "select 用户名 from 用户";
String encodeStr = new String(Base64.encode(sql.getBytes("UTF-8"))); // 编码
System.out.println(encodeStr);
得到:
在Java中解码:
sql = new String(Base64.decode(sql.getBytes()),"UTF-8");
Java代码中为什么要使用getBytes("UTF-8")呢?因为Windows和Linux环境下默认编码不同,要使你的程序在不同平台下得到相同编码,必然要指定编码
虽然Html和JS的编码都是utf-8,但JS从页面上得到的中文编码却是utf-16,所以直接对中文进行Base64编码将得到错误的结果,所以我们要先从utf-16转到utf-8再编码