如何在Servlet中读取图片(或其他文件)并将其编码为base64

在servlet中,我必须从磁盘读取图像文件,将其编码为Base64,然后发送回客户端。因为我只找到了适用于iOS,Python和其他类型的示例(主要都是以相同的方式进行操作),所以我想在这里发布代码以帮助他人;)

这仅适用于最大2GB的文件:设置容量ByteBuffer仅需int

回答:

为什么如此复杂,为什么要将完整图像读入内存?一个简单得多的解决方案:

protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 

sun.misc.BASE64Encoder enc = new sun.misc.BASE64Encoder();

enc.encode(new FileInputStream("/path/to/file.whatever"), response.getOutputStream());

}

以上是 如何在Servlet中读取图片(或其他文件)并将其编码为base64 的全部内容, 来源链接: utcz.com/qa/412755.html

回到顶部