1、最适合应用场景:
h5或者android开发中通常会遇到一种场景,当用手机输入法输入Emoji表情符的时候,由于数据库不支持,保存时这些表情符号就会被过滤掉以至于无法显示,android和h5开发中可以使用Base64算法解决这个问题。
2、使用工具:
使用Apache commons codec 类Base64
3、引入jar包:
加入jar包依赖(如果是maven项目就直接在pom文件中加入下边内容,若不是就加入对应jar包)
<dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> <version>1.6</version> </dependency>
4、加密解密实现:
import org.apache.commons.codec.binary.Base64; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.io.UnsupportedEncodingException; /** * 将String类型的字符串进行base64编码与解码,使用utf-8 */ public class Base64Util { private static final Logger logger = LoggerFactory.getLogger(Base64Util.class); /** * 对给定的字符串进行base64加密 */ public static String encodeData(String inputData) { try { if (null == inputData) { return null; } return new String(Base64.encodeBase64(inputData.getBytes("utf-8")), "utf-8"); } catch (UnsupportedEncodingException e) { logger.error(inputData, e); } return null; } /** * 对给定的字符串进行base64解密 */ public static String decodeData(String inputData) { try { if (null == inputData) { return null; } return new String(Base64.decodeBase64(inputData.getBytes("utf-8")), "utf-8"); } catch (UnsupportedEncodingException e) { logger.error(inputData, e); } return null; } }
