Java编写图片转base64

news2025/4/8 14:02:57

图片转成base64 url , 在我们的工作中也会经常用到,比如说导出 word,pdf 等功能,今天我们尝试写一下。

        


      File file = new File("");
        byte[] data = null;
        InputStream in = null;
        ByteArrayOutputStream out = null;
        try{
            URL url = new URL("http://192.168.200.86:18080/XSGL/2023-07-27/20230808170744.jpg");
            HttpURLConnection connection = (HttpURLConnection) url.openConnection();
            connection.setRequestMethod("GET");
            connection.setConnectTimeout(5000);
            connection.setReadTimeout(5000);
            in = connection.getInputStream();
            out = new ByteArrayOutputStream();
            byte[] b = new byte[1024];
            int len = 0;
            while((len =in.read(b)) != -1){
                out.write(b,0,len);
            }
        }catch (Exception e){
            e.printStackTrace();
        }finally {
            try{
                if(in != null ){
                    in.close();
                }
            }catch (IOException e){
                e.getStackTrace();
            }
        }
        System.out.println("转换后的图片大小:"+out.toByteArray().length/1024);
        BASE64Encoder base = new BASE64Encoder();
        String encode = base.encode(out.toByteArray());
        System.out.println("data:image/jpeg;base64,"+encode);

需要导入的包:

生成url最终放到浏览器就可以看到图片了

分享图片与base64 互相转换的插件 转载于:Base64/图片转换 - 在线工具

仅供学习与参考,若侵权联系作者本人进行删除。

 若本文对你有所帮助,请一键三连,就是对我最大的支持。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1126750.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++初阶 入门(2)

目录 一、缺省函数 1.1什么是缺省函数 1.2为什么要有缺省函数 1.3使用缺省函数 1.4测试代码 二、函数重载 2.1什么是函数重载 2.2为什么要有函数重载 2.3什么情况构成函数重载 2.4函数重载例子及代码 三、引用 3.1什么是引用 3.2如何引用 ​3.3常引用(可略过) 3…

【宝塔面板建站】本地连接云服务器的数据库 以阿里云服务器为例子(保姆级图文)

目录 实现效果实现过程1. 获取云服务的数据库root密码 2.尝试本地连接2.1 端口放行2.2 云服务器授权本地访问MySQL权限 实现代码总结 『宝塔面板建站』分享宝塔面板从安装到实战的宝塔面板本机免云服务器免域名搭建网站等内容。 欢迎关注 『宝塔面板建站』 系列,持续…

Plex Media Server for Mac: 打造您的专属媒体库

在数字媒体时代,我们越来越依赖各种媒体应用来丰富我们的生活。其中,Plex Media Server for Mac以其高效、稳定和多功能性,逐渐成为了Mac用户们的首选。今天,我们就来深入探讨这款个人媒体软件的优势和应用场景。 Plex Media Serv…

【Zero to One系列】微服务Hystrix的熔断器集成

前期回顾: 【Zero to One系列】springcloud微服务集成nacos,形成分布式系统 【Zero to One系列】SpringCloud Gateway结合Nacos完成微服务的网关路由 1、hystrix依赖包 首先引入hystrix相关的依赖包,版本方面自己和项目内相对应即可&#…

ABB变频器使用PROFINET IO通信协议时的输入和输出介绍

ABB变频器使用PROFINET IO通信协议时的输入和输出介绍 前面和大家分享了 ABB变频器使用PROFINET IO通信模块时的激活方法 本次继续和大家分享ABB变频器使用PROFINET IO通信协议时的数据输入和输出。 如下图所示,在参数号52、53中可以设置现场总线适配器的数据输入和数据输出,…

MyBatis:配置文件

MyBatis 前言全局配置文件映射配置文件注 前言 在 MyBatis 中,配置文件分为 全局配置文件(核心配置文件) 和 映射配置文件 。通过这两个配置文件,MyBatis 可以根据需要动态地生成 SQL 语句并执行,同时将结果集转换成 …

深入探索:AbstractQueuedSynchronizer 同步器的神秘面纱

文章目录 🌟 一、AQS的底层实现原理🍊 1. AQS的概述🍊 2. AQS的数据结构🎉 (1) 同步状态🎉 (2) 等待队列 🍊 3. AQS的锁请求和释放过程🎉 (1) 独占模式🎉 (2) 共享模式 &#x1f34a…

Electron 学习

Electron基本简介 如果你可以建一个网站,你就可以建一个桌面应用程序。Eletron 是一个使用 JavaScript, HTML和 CSS等Web 技术创建原生程序的框架,它负责比较难搞的部分,你只需把精力放在你的应用的核心上即可。 Electron 可以让你使用纯 Jav…

s27.linux运维面试题分享

第一章 计算机基础和Linux安装 1.冯诺依曼体系结构组成部分 计算机硬件由运算器、控制器、存储器、输入设备和输出设备五大部分组成。2.Linux哲学思想(或Liunx基本原则、思想、规则) 一切都是一个文件(包括硬件)。小型,单一用途的程序。连…

分享一个月份连续的MSSA插值的GRACE level03数据集

1. 背景介绍 我们通常使用的GRACE数据包含球谐数据和mascon数据。而不管是球谐产品还是mascon产品,都存在月份数据的缺失,如下图所示(Yi and Sneeuw, 2021)。本专栏分享了一个利用多通道奇异谱分析(MSSA&#…

PostgreSQL 插件 CREATE EXTENSION 原理

PostgreSQL 提供了丰富的数据库内核编程接口,允许开发者在不修改任何 Postgres 核心代码的情况下以插件的形式将自己的代码融入内核,扩展数据库功能。本文探究了 PostgreSQL 插件的一般源码组成,梳理插件的源码内容和实现方式;并介…

Apache Doris (四十七): Doris表结构变更-Schema变更

🏡 个人主页:IT贫道_大数据OLAP体系技术栈,Apache Doris,Clickhouse 技术-CSDN博客 🚩 私聊博主:加入大数据技术讨论群聊,获取更多大数据资料。 🔔 博主个人B栈地址:豹哥教你大数据的个人空间-豹哥教你大数据个人主页-哔哩哔哩视频 目录

报错解决:libcudart.so和libprotobuf.so链接库未找到

报错解决:libcudart.so和libprotobuf.so链接库未找到 libcudart.so链接库未找到原因解决方法 libprotobuf.so链接库未找到原因解决方法 此博客介绍了博主在编译软件包时遇到的两个报错,主要是libcudart和libprotobuf两个动态链接库未找到的问题&#xff…

频繁full GC排查

场景:通过prometheus去拉取通过actuator组件暴露的端点中的JVM相关指标。通过告警规则,检测线上服务出现频繁full gc。 ((jvm_gc_pause_seconds_count{action"end of major GC",cause!"Heap Dump Initiated GC"}- jvm_gc_pause_sec…

显示屏没有信号monitor no signal from device

双屏幕总是有个屏幕连接不上,显示没有信号。 环境 win11 Dell dual monitor双屏 解决方法 检查电源有没有插好,HDMI或DP线有没有插好。如果仍然出现这个情况,试着更新一下驱动。 如果还是点不亮,那么关掉亮的那个显示屏。用…

前端开发技术栈(工具篇):详细介绍npm、pnpm和cnpm分别是什么,使用方法以及之间有哪些关系

目录 npm、pnpm和cnpm分别是什么 npm pnpm cnpm NPM包管理器 使用npm管理,创建/初始化项目 修改npm镜像(npm源设置) 基本命令 安装依赖项 下载特定版本的依赖 下载开发依赖 下载全局依赖(全局安装) 升级依…

redis分布式锁的应用

redis 作为分布式锁的东西 分布式锁的应用 redis,zk,数据库这些都可以实现分布式锁 我们今天主要基于redis实现的分布式锁,而且要求性能要好 基于一个小的业务场景来说,就比如说秒杀中的减库存,防止超卖这种代码就会有并发问题,比方说3个线程…

C++动态规划算法的应用:得到 K 个半回文串的最少修改次数 原理源码测试用例

本文涉及的基础知识点 动态规划 题目 得到 K 个半回文串的最少修改次数 给你一个字符串 s 和一个整数 k ,请你将 s 分成 k 个 子字符串 ,使得每个 子字符串 变成 半回文串 需要修改的字符数目最少。 请你返回一个整数,表示需要修改的 最少…

VS Code打造Julia IDE

文章目录 运行和调试Workspace绘图选项卡代码编辑 搜索并下载Julia插件后,左侧工具栏会出现Julia的三圆图标,点进去之后分为Workspace, Documentation以及Plot navigator三个子窗。 运行和调试 打开.jl文件后,其右上角会出现一个三角形的符…

【洛谷算法题】P3954-成绩【入门1顺序结构】

👨‍💻博客主页:花无缺 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 本文由 花无缺 原创 收录于专栏 【洛谷算法题】 文章目录 【洛谷算法题】P3954-成绩【入门1顺序结构】🌏题目背景🌏题目描述&#…