jdk6或者7Base64转码与解码
昨天遇到了一个问题,项目有些老旧,开发环境用的javase1.6,运行环境是jdk1.7,都无法使用jdk8自带的编码和解码。
如果有jdk8,请使用这几行代码。
String orig = "hello world!";String desc = Base64.getEncoder().encodeToString(orig.getBytes(StandardCharsets.UTF_8));System.out.println("加密后的字符串为:"+desc);String unDecodeStr=new String(Base64.getDecoder().decode(desc),StandardCharsets.UTF_8);System.out.println("解密后的字符串为"+unDecodeStr)
如果是8以下,可以用以下两种方法解决。
1、尝试找你项目中的其它包里面有没有这个base64相关的包,比如我的项目里有个 fastjson 包,就可以使用
// 类 com.alibaba.fastjson.util.Base64 String nStr =new String(Base64.decodeFast(encodeStr));System.out.println(nStr);
2、也有开源的jar包, javabase64-1.2.jar,可以直接点击后面进行下载下载地址。引入这个jar包后,几行代码就可以实现编码与解码了:
示例代码:
String类型 进行Base64编码
String encoded = Base64.encode("Hello, world!");
String类型 进行Base64解码
String decoded = Base64.decode(encoded);
指定字符编码方式
String encoded = Base64.encode("Hello, world!", "UTF-8"); String decoded = Base64.decode(encoded, "UTF-8");
对文件进行编码:
如果文件比较小,可以通过以下方式,直接读取到内存中进行编码处理
byte[] source = ...; // load your data herebyte[] encoded = Base64.encode(source);byte[] decoded = Base64.decode(encoded);
如果大件比较大,则建议使用stream:
代码示例Base64编码:
InputStream inputStream = new FileInputStream("source.jpg");OutputStream outputStream = new FileOutputStream("encoded.b64");Base64.encode(inputStream, outputStream);outputStream.close();inputStream.close();代码示例Base64解码:InputStream inputStream = new FileInputStream("encoded.b64");OutputStream outputStream = new FileOutputStream("decoded.jpg");Base64.decode(inputStream, outputStream);outputStream.close();inputStream.close();
参考原文:https://blog.csdn.net/chenleixing/article/details/46543901
jdk6或者7Base64转码与解码相关推荐
- 二维码编解码 Java调用示例代码
二维码编解码 支持二维码的生成与识别.二维码生成时,直接返回生成的二维码图片 二维码生成 复制代码 二维码解码 复制代码 注意,该示例代码仅适用于 www.apishop.net网站下API 使用该产 ...
- QR二维码编码解码原理算法介绍
一.什么是二维码: 二维码 (2-dimensional bar code),是用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息的. 在许多种类的二维条码中,常用 ...
- 条形码和二维码编码解码工具类源码
有一个好的工具,会让你的开发事半功倍.再将讲这个工具类之前,我先给小白补充一点条形码和二维码(以下基础知识选自,我本科阶段的一本教材:<物联网导论>(刘云浩 编著).有对物联网感兴趣的,可 ...
- java qlv转mp4 代码_Java实用工具类五:URL转码、解码类
package com.cn.hnust.util; import java.io.UnsupportedEncodingException; import java.util.HashMap; im ...
- 图片路径转码与解码(学习)
有时候图片路径在页面跳转时传参需要进行转码与解码方可完整的路径传过去 js携带的编码(转码)方法 encodeURIComponent() 和解码方法 decodeURIComponent() ...
- 标题 Python生成二维码和解码
标题 Python生成二维码和解码 一.首先下载第三方库 方法一:打开cmd命令窗口,通过命令pip install 包名 进行第三方库安装 1.找到自己的Python环境位置目录,输入cmd回车进入 ...
- 使用URLEncoder、URLDecoder进行URL参数的转码与解码
url后参数的转码与解码 import java.net.URLDecoder; import java.net.URLEncoder; String strTest = "?=abc?中% ...
- Java实用工具类五:URL转码、解码类
此文仅对自己工作中用到的类进行总结,方便以后的使用. package com.cn.hnust.util;import java.io.UnsupportedEncodingException; im ...
- js地址栏转码与解码
encodeURIComponent 和 decodeURIComponent(转码和解码) encodeURIComponent (URL)这样使用
- 4位格雷码的顺序编码_格雷码编码 解码 实现(Python)
作者:曹博 01 二值码 02 格雷码编码 2.1 编码优点 2.2 编码生成 2.3 递归生成 2.4 二值码转换 2.5 编码图 03 格雷码投影 3.1 投影图案生成 3.2 DLP投影图像 0 ...
最新文章
- 内存管理[6]测试堆的内存占用情况
- docker-compose 安装方法
- 二十七、事务隔离级别示例
- linux2.6添加新硬盘,Linux_TurboLinux11添加新硬盘方法,一.Linux的硬盘识别2.6 kernel - phpStudy...
- 20145122《Java面向对象程序设计》实验二实验报告
- phpcmsV9 关键词keywords删除、替换与修改
- python3.6教程案例分析_python 3.6 --实战Scrapy
- flutter android 和 ios 发布
- 有软件开发,就要有软件测试!
- 数据结构实验 7.兔子与樱花
- 解决MarkDown打开出现:awesomium web-brower framework This view has crashed
- git冲突解决和放弃本地操作
- 腾讯即将发布区块链游戏,网友大呼求别再养猫养狗了!
- linux中send函数MSG_NOSIGNAL
- 副连长是什么级别_军改后连长工资有多少?军改后军队各级别工资待遇标准
- 关闭WIN7交互式服务检测提示
- 2022年湖南省临床执业医师考试第三单元综合(二)
- 第7章第20节:单图排版:使用巨型字母分隔整张图片 [PowerPoint精美幻灯片实战教程]
- AdGuard添加规则方法
- 【智能驾驶】最全、最强的无人驾驶技术学习路线