Java之Base64实现文件和字符串之间的转换
摘要:Java通过Base64加密解密实现文件和字符串之间的转换!
Base64.java
package com.qdexam.util;import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;public class Base64 {// 图片转化成base64字符串public static String GetImageStr(String imgFile) {// 将图片文件转化为字节数组字符串,并对其进行Base64编码处理InputStream in = null;byte[] data = null;// 读取图片字节数组try {if(imgFile==null||"".equals(imgFile)){imgFile="uploaddir/file/default.png";}in = new FileInputStream(imgFile);data = new byte[in.available()];in.read(data);in.close();} catch (IOException e) {e.printStackTrace();}// 对字节数组Base64编码BASE64Encoder encoder = new BASE64Encoder();return encoder.encode(data);// 返回Base64编码过的字节数组字符串}// base64字符串转化成图片public static boolean GenerateImage(String imgStr) { // 对字节数组字符串进行Base64解码并生成图片if (imgStr == null) // 图像数据为空return false;BASE64Decoder decoder = new BASE64Decoder();try {// Base64解码byte[] b = decoder.decodeBuffer(imgStr);for (int i = 0; i < b.length; ++i) {if (b[i] < 0) {// 调整异常数据b[i] += 256;}}// 生成jpeg图片String imgFilePath = "d://222.jpg";// 新生成的图片OutputStream out = new FileOutputStream(imgFilePath);out.write(b);out.flush();out.close();return true;} catch (Exception e) {return false;}}}
Java之Base64实现文件和字符串之间的转换相关推荐
- Java中字节数组和十六进制字符串之间的转换
1. 概述 在本教程中,我们将看看将字节数组转换为十六进制字符串,反之亦然的不同方法. 我们还将了解转换机制并编写我们的实现来实现这一点. 2. 字节和十六进制之间的转换 首先,我们来看看字节和十六进 ...
- 【java笔记】基本类型与字符串之间的转换
1.基本类型数据+"" int a=1; String s=a+"";//"1" 2.String转换为对应的基本类型 包装类中的parse ...
- java base64字符 转图片_JAVA实现图片与base64字符串之间的转换详解
import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import ...
- java 嵌套对象转xml_Gson对Java嵌套对象和JSON字符串之间的转换 | 学步园
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,具有良好的跨平台特性.近几年来已经和XML一样成为C/S架构中广泛采用的数据格式.有关JSON的更多知识, ...
- Java基础——基本类型和包装类、基本类型和字符串之间的转换
基本类型和包装类之间的转换 基本类型和包装类之间经常需要互相转换,以 Integer 为例(其他几个包装类的操作雷同哦): 在 JDK1.5 引入自动装箱和拆箱的机制后,包装类和基本类型之间的转换就更 ...
- java中数组和字符串之间的转换
java中对于数组和字符串之间的转换确实是一小的迷点. 字符串转为数组可以使用: char[] toCharArray() 将此字符串转换为一个新的字符数组. 数组转字符串: 可以直接使用new的方式 ...
- 为什么需要java包装类,装箱拆箱,基本类型与字符串之间的转换,java数据类型
为什么需要包装类? 首先,Java语言是一个面向对象的语言,但是Java中的基本数据类型却是不面向对象的,将每个基本数据类型设计一个对应的类进行代表,这种方式增强了Java面向对象的性质. 其次,如果 ...
- JavaSE(六)包装类、基本类型和字符串之间的转换、==和equals的区别
一.包装类 Java语言是一个面向对象的语言,但是Java中的基本数据类型却是不面向对象的,这在实际使用时存在很多的不便,为了解决这个不足, 在设计类时为每个基本数据类型设计了一个对应的类进行代表,这 ...
- C++中数字与字符串之间的转换 scanf string总结(复习必读)
1 string的scanf读入操作 C++里面控制台输入直接使用cin操作就可以了:或者getline(istringstream,string); 字符和数字加减就是字符的ASCII码和数字直接加 ...
最新文章
- 安卓帧数监测软件_土壤墒情监测仪
- Sumif——可以用来发函证和进行重分类
- ELK之elasticsearch5.6的安装和head插件的安装
- 【ArcGIS微课1000例】0018:ArcGIS设置相对路径和数据源
- 前端使用正则表达式从接口地址栏取值并将对应的值展示在页面上
- SQL Server replication requires the actual server name to make a connection to the server.错误解决...
- 24期分期免息可以提前还吗?
- 用几小时,零基础也能学会可视化大屏,这百张模板帮了大忙
- 拓端tecdat|matlab测量计算信号的相似度
- 【声源定位】基于matlab阵列流形矩阵信号显示【含Matlab源码 549期】
- JS字符串转换为JSON的四种方法
- 微信视频号认证有什么要求?
- 第十五周项目二----用哈希法组织关键字之链地址法
- 智能建筑弱电工程基本的一些施工项目
- golang中使用validator进行数据校验及自定义翻译器
- 充满正能量阳光活的生日祝福语
- 错误	 CS8107 C# 7.0 中不支持功能“xxxxxx”。请使用 7.1 或更高的语言版本。
- Mysql命令insert into:向表中插入数据(记录)
- matlab simulink 汽车abs模糊pid控制和pid控制对比
- Linxu下RocketMq及可视化界面的搭建
热门文章
- android 恢复app 到前台,android手机把app disable了,怎么恢复
- python爬虫淘宝评论_Python爬取淘宝店铺和评论
- 卡巴斯基授权许可文件_制片方未提供电视台授权证明,构成根本违约吗?
- win8安装python3后不能编程_Win8.1 64位系统,python3.4 肿么安装gevent成功后不能用
- 【转】浅谈TDD、BDD、ATDD、DDD的区别
- Sharepoint学习笔记—Ribbon系列
- JSP的三六九四七(三大指令、六大标签、九大内置对象、四大作用域、七个动作指令)
- win10固态硬盘分区 整数_惠普HP笔记本Win10改Win7系统教程
- Qt应用程序发布:Qt应用程序添加版本版权生产商等信息
- web前后端 http转https