前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Java将图片转Base64

Java将图片转Base64

作者头像
程序员云帆哥
发布于 2022-05-12 01:18:39
发布于 2022-05-12 01:18:39
2K00
代码可运行
举报
文章被收录于专栏:程序员云帆哥程序员云帆哥
运行总次数:0
代码可运行

Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一。Base64编码可用于在HTTP环境下传递较长的标识信息。例如,在Java Persistence系统Hibernate中,就采用了Base64来将一个较长的唯一标识符(一般为128-bit的UUID)编码为一个字符串,用作HTTP表单和HTTP GET URL中的参数。在其他应用程序中,也常常需要把二进制数据编码为适合放在URL(包括隐藏表单域)中的形式。此时,采用Base64编码具有不可读性,即所编码的数据不会被人用肉眼所直接看到。

代码语言:javascript
代码运行次数:0
运行
复制
/**
 * 图像转64base
 */


import java.lang.*;
import java.io.*;


public class Base64 {
    
    public static String byteConverterBASE64(File file){
		long size = file.length();
		byte[] imageByte = new byte[(int)size];
		FileInputStream fs = null;
		BufferedInputStream bis = null;
		try {
			fs = new FileInputStream(file);
			bis = new BufferedInputStream(fs);
			bis.read(imageByte);
		} catch (FileNotFoundException e) {
			log.error("文件"+file.getName()+"不能被找到:"+e.getMessage());
		} catch (IOException e) {
			log.error("byte转换BASE64出错:"+e.getMessage());
		} finally{
			if(bis != null){
				try {
					bis.close();
				} catch (IOException e) {
					log.error("关闭输入流出错:"+e.getMessage());
				}
			}
			if(fs != null){
				try {
					fs.close();
				} catch (IOException e) {
					log.error("关闭输入流出错:"+e.getMessage());
				}
			}
		}
		return (new sun.misc.BASE64Encoder()).encode(imageByte);	
	}
    
    public static void main(String[] args) {
    	File file=new File("C:\\test\\nice.jpg");
		String str=Base64.byteConverterBASE64(file);
		System.out.println(str);
		System.out.println(str.length());
	}
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017-06-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
java 读写文件的两种方式
  在实际开发过程中,对于文件的读写操作也是经常碰到的,如何用java完成对文件的准确无误的读写呢?
全栈程序员站长
2022/09/06
2510
java 读写文件的两种方式
【Java 基础篇】Java字节流详解
在Java中,字节流是一种用于读取和写入字节数据的流。它提供了一种逐字节操作的方式,适用于处理二进制数据,如图像、音频、视频等。本文将详细介绍Java字节流的原理、使用场景和常用类,并提供一些示例代码。
繁依Fanyi
2023/10/12
3500
Java IO 知识整理
由于java I/O库需要很多性能的各种组合,如果这些性能都是用继承来实现,那么每一种组合都需要一个类,这样就会造成大量行重复的类出现。如果采用装饰模式,那么类的数目就会大大减少,性能的重复也可以减至最少。因此装饰模式是java I/O库基本模式。装饰模式的引进,造成灵活性和复杂性的提高。因此在使用java IO库时,必须理解java IO库是由一些基本的原始流处理器和围绕它们的装饰流处理器所组成的。
Abalone
2022/07/14
6020
Java IO 知识整理
Word转PDF 并转成base64(亲测可用)
ExcelPdToWord.documents4jWordToPdf(sourcePath, targetPath);
默 语
2024/11/20
3710
【Java 基础篇】Java字节缓冲流详解
在Java中,字节缓冲流是一种用于提高字节流读写效率的流。它们通过在内存中创建缓冲区,减少了与底层设备的直接交互次数,从而提高了读写的速度。本文将详细介绍Java字节缓冲流的原理、使用场景和常用类,并提供一些示例代码。
繁依Fanyi
2023/10/12
4670
Java 字节流
此抽象类是表示输出字节流的所有类的超类。输出流接受输出字节并将这些字节发送到某个接收器
Tim在路上
2020/08/04
9040
Java 图片URL转Base64编码
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/10/05
3.9K0
Java 图片URL转Base64编码
md5和base64加密解密
import java.io.IOException; import java.security.MessageDigest; import sun.misc.BASE64Encoder; import sun.misc.BASE64Decoder; public class MD5Util { /** * MD5加密 */ public static String md5Encryption(String str) { MessageDig
HUC思梦
2020/09/03
2.7K0
Base64码常见操作(url链接文件转base64编码、本地文件转base64编码等)
因为是图片,可以复制输出的base64编码到这个网址验证:https://tool.jisuapi.com/base642pic.html 其他base64操作如下:
共饮一杯无
2022/11/28
2.5K0
Java Base64转换,Java Base64工具类
但这个性能一般,而且转换出来的base64字符串会有换行符,可能还需要替换换行符,避免在某些场景因为分行导致出错 2、使用Jdk8的Base64工具类(优先考虑使用)
用户9131103
2023/07/17
8250
Java多文件压缩
ha_lydms
2023/08/10
4310
【Java+EasyExcel】使用 SpringBoot 实现 Excel 文件的导入(含示例代码)
Excel 导入 浏览文件夹,选择需要上传的 Excel 文件,这里使用 POSTMAN 工具; 将本地文件上传至服务器指定位置; 服务器解析Excel文件; 将Excel中解析的数据存入数据库中。
程序员洲洲
2024/06/11
1.4K0
【Java+EasyExcel】使用 SpringBoot 实现 Excel 文件的导入(含示例代码)
JAVA入门学习八
[TOC] 异常概述和分类 概述:异常就是Java程序在运行过程中出现的错误。 异常的分类: 通过API查看Throwable所知在Java.Lang里面使用是不用导包的它是JAVA语言中所有错误或者异常的超类(父根类); Error : 服务器宕机,数据库崩溃等 Exception : 可以接收程序编译和运行时候发生的异常,并且异常子类后缀都是Exception; 异常的继承体系: Throwable (超类) Error Exception 编译时候异常(静态): Java程序必须显示处理,否
全栈工程师修炼指南
2022/09/28
7250
JAVA入门学习八
第五阶段-IO基础:【第三章 异常】
而使用IO流我们可以实现一些强大的功能,例如针对文件的移动复制等操作,又或者程序与外部文件之间的数据存储或者读取,又或者实现一个实时的聊天程序(网络编程),其中数据的传输也用到了我们的IO流,这些内容我们都会在后面设计,下面我就开始IO流的正式学习
BWH_Steven
2019/08/09
5090
Java学习笔记——IO流
File中的方法,仅涉及到如何创建、删除、重命名等等。只要涉及文件内容的,File是无能为力的,必须由io流来完成。
梦飞
2022/06/23
3230
PGP加解密
对接客户需求时对方使用PGP对文件进行加解密,但PGP是商用的非对称加解密方式,可以改用Apache基金会推出的开源的GPG,两者的加解密可以无缝对接。
雨临Lewis
2023/07/11
1.7K0
Java原生图片Base64转码与Base64解码
程序员朱永胜
2023/08/21
4440
实战:第十二章:txt文件转xml文件
开发不就这么点事吗,有个啥好bb的 controller\   @RequestMapping("/DataDistributionController") @RestController public class DataDistributionController { @Autowired DataDistributionService dataDistributionService; @PostMapping("/dataDistribution") public
Java廖志伟
2022/09/28
8650
java实现将图片读取成base64字符串,将base64字符串存储为图片。
将图片转化为字符串以后,由于字符串更方便在网络上通过ajax传输、在网络web前台和后台间进行传输。
全栈程序员站长
2022/11/18
2.1K0
java 将文件流转化成字符串传输
https://www.aliyun.com/jiaocheng/851433.html
用户7886150
2021/04/29
1.6K0
相关推荐
java 读写文件的两种方式
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档