首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >java 编码 Base64.getMimeDecoder

java 编码 Base64.getMimeDecoder

原创
作者头像
搜罗万相
发布2025-08-15 13:38:04
发布2025-08-15 13:38:04
3960
举报
文章被收录于专栏:Java开发Java开发

在 Java 中,Base64.getMimeDecoder() 用于获取一个 MIME 类型的 Base64 解码器。MIME 类型的 Base64 编码通常会在每 76 个字符后添加一个换行符,这种解码器可以正确处理这类编码格式。

以下是使用 Base64.getMimeDecoder() 进行解码的示例:

代码语言:java
复制
import java.util.Base64;

public class MimeBase64DecoderExample {
    public static void main(String[] args) {
        // 假设这是一个 MIME 格式的 Base64 编码字符串
        String mimeBase64Encoded = "SGVsbG8gV29ybGQhIFRoaXMgaXMgYSBzaW1wbGUg" +
                                  "\nZXhhbXBsZSBvZiBNSU1FIEJhc2U2NCBlbmNvZGlu" +
                                  "\nZy4=";
        
        try {
            // 使用 MIME 解码器进行解码
            byte[] decodedBytes = Base64.getMimeDecoder().decode(mimeBase64Encoded);
            
            // 将解码后的字节数组转换为字符串
            String decodedString = new String(decodedBytes);
            
            System.out.println("解码后的内容: " + decodedString);
        } catch (IllegalArgumentException e) {
            System.err.println("解码失败: 无效的 Base64 字符串");
            e.printStackTrace();
        }
    }
}

上述代码的主要步骤:

  1. 定义一个包含换行符的 MIME 格式 Base64 编码字符串
  2. 使用 Base64.getMimeDecoder() 获取 MIME 解码器
  3. 调用 decode() 方法对编码字符串进行解码
  4. 将解码后的字节数组转换为字符串并输出

Base64.getMimeDecoder()Base64.getDecoder() 的区别在于:前者可以处理包含换行符的 MIME 格式 Base64 编码,而后者只能处理不包含换行符的标准 Base64 编码。如果用标准解码器解码 MIME 格式的编码字符串,会抛出 IllegalArgumentException 异常。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

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

问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档