Base64码常见操作(url链接文件转base64编码、本地文件转base64编码等)
文章目录
- 引入坐标
- 常见操作
- 下载远程url的文件并转换成base64编码
- 文件转base64编码
- 判断一个字符串是否是base64
引入坐标
<dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.4.3</version></dependency><dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpclient</artifactId><version>4.5.10</version></dependency><dependency><groupId>commons-io</groupId><artifactId>commons-io</artifactId><version>2.5</version></dependency>
常见操作
下载远程url的文件并转换成base64编码
代码如下:
public static String file(String url){String encode = null;try {CloseableHttpClient client = HttpClients.createDefault();HttpGet get = new HttpGet(url);CloseableHttpResponse response = client.execute(get);//文件流HttpEntity httpEntity = response.getEntity();InputStream inStream = httpEntity.getContent();byte[] bytes = IOUtils.toByteArray(inStream);//附件base64encode = cn.hutool.core.codec.Base64.encode(bytes);} catch (IOException e) {log.error(e.getMessage(), e);}return encode;}
测试:
/*** 测试下载远程url的文件,转换成base64编码* @throws Exception*/@Testpublic void testUrlFileToBase64() throws Exception {String BASE64Str = Base64Util.file("https://xxx.oss-cn-hangzhou.aliyuncs.com/upload/20220513/165242342M");System.out.println("BASE64Str:"+BASE64Str);}
因为是图片,可以复制输出的base64编码到这个网址验证:https://tool.jisuapi.com/base642pic.html
其他base64操作如下:
文件转base64编码
public static String fileToBase64(File file) {try {byte[] imageData = FileUtils.readFileToByteArray(file);String base64 = encodeImage(imageData);return base64;} catch (Exception e) {log.error(e.getMessage(), e);return null;}}public static String encodeImage(byte[] imageData) {String encodeStr = Base64.getEncoder().encodeToString(imageData);log.info("encodeImage>>" + encodeStr);return encodeStr;}
判断一个字符串是否是base64
public static boolean isBase64(String str) {String base64Pattern = "^([A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}==)$";return Pattern.matches(base64Pattern, str);}
其他base64转换可以查看我这篇文章:Base64和byte[]数组互转的两种方式
Base64码常见操作(url链接文件转base64编码、本地文件转base64编码等)相关推荐
- 16、爬取知乎大v张佳玮的文章“标题”、“摘要”、“链接”,并存储到本地文件...
爬取知乎大v张佳玮的文章"标题"."摘要"."链接",并存储到本地文件 1 # 爬取知乎大v张佳玮的文章"标题".&qu ...
- C# .NET 根据Url链接保存Image图片到本地磁盘
C# .NET 根据Url链接保存Image图片到本地磁盘 原文:C# .NET 根据Url链接保存Image图片到本地磁盘 根据一个Image的Url链接可以在浏览器中显示一个图片,如果要通过代码将 ...
- 文件包含原理及本地文件包含漏洞演示(本地文件,远程包含文件的测试)
一.文件包含漏洞概述 1.定义:文件包含漏洞是一种最常见的漏洞类型,它会影响依赖于脚本运行时的web应用程序.当应用程序使用攻击者控制的变量构建可执行代码的路径时,文件包含漏洞会导致攻击者任意控制运行 ...
- 可以读取html文件,javascript能读取本地文件吗?
JavaScript读取本地文件 利用XMLHttpRequest对本地文件进行读取操作,值得注意的是,HTML文档的格式要与流中的读取格式设置一致, 代码如下:function load(name) ...
- java读取修改文件内容_Java对本地文件内容读取、修改、删除的操作
import org.apache.commons.lang.StringUtils; import java.io.*; import java.util.HashMap; import java. ...
- 在chrome网页上通过点击链接或执行js打开本地文件夹
用来能在网页上方便的打开常用文件夹或文件. 方法: 下面文件放到c:/tools/位置: 执行mycall.reg添加注册信息: 试试在chrome里点击<a href="mycall ...
- 读文件 —— WEB前端读取本地文件内容哪些事(前台解析txt文件)……
强制让浏览器允许JS读写本地文件--的操作! 问题描述: 让自己的浏览器允许js读写本地文件,尽可能多的兼容各种浏览器.(即本机的js文件读写本机的文件) 问题回复--1: 您的意思是不需要浏览器与用 ...
- eclipse中dtd文件约束影射到本地文件
用struts中的约束来举例,这个dtd约束链接如果在本地没有网络的情况下会找不到这个约束文件,会报错. 解决办法: 1.找到这个约束文件放到项目下,把这个链接与本地文件做一下影射. 2.影射操作: ...
- 本地拷贝文件到服务器卡死,本地文件拷贝到服务器
本地文件拷贝到服务器 内容精选 换一换 您需要将编译后的可执行文件拷贝到目标服务器,并构造相关输入数据,从而运行工程.对于本文档的应用示例,查看$HOME/tools/projects/Custom_ ...
- h5读取android本地的文件,h5+js实现本地文件读取和写入
代码如下: 读取本地文件 Document //点击导入按钮,使files触发点击事件,然后完成读取文件的操作 $("#fileImport").click(function(){ ...
最新文章
- 查看mysql整个库的数据大小_查看mysql数据库容量大小
- Math4DS 直播 NO.10 | “机器学习之父”、加州大学伯克利分校迈克尔·乔丹
- chrome插件infinity_5款超好用Chrome插件,快试试看!
- Java关键字final使用详解
- php重载,PHP 重载
- windows平台下vlc编译
- Jmeter逻辑控制器-ForEach Controller
- logistic regression一点理解
- vuex模块化 怎么引用state_vue 组件如何调用 vuex 模块中的getters
- 珍大户《认知世界的经济学》学习笔记 -- 第17课 影响消费者的因素 -- 色彩、冷暖、秩序
- 一文读懂模拟电路和数字电路之间的区别和联系
- 【NOIP2016提高组】蚯蚓
- 【C语言编程练习】华氏转换为摄氏
- Django 中 models 用法及参数详解
- 剑指 Offer 24. 反转链表java
- 计算机组成原理大题速成,计算机组成原理大题
- Linux操作系统与Shell编程
- 创建数据库报错--MySQL server is running with the --super-read-only option
- 这9款宝藏办公软件原地封神,款款深入人心
- C3P0 连接池时报 TimeoutException 的解决方法