Este artigo descreve o método de converter base64 imagens que codificam dados em imagens locais em Java. Compartilhe -o para sua referência, como segue:
Funções usadas no projeto para converter dados de imagem base64 em imagem local
/*** Substitua os dados da imagem base64 em html como a imagem real* @param html* @param fileroot caminho local* @param serroot servidor caminho* @return*/public static string replyBase64Image (string html, string filleroot, string serroot) {arquivo de arquivo = novo (filrootoot); if (! file.exists ()) {// crie novo arquivo (fileroot) .mkdirs (); } String htmlContent = html; Padrão padrão = padrão.compile ("// <img [^>]*src =/" Data: image/[^>]*> "); matcher Matcher = Pattern.matcher (html); Guidutils.init () str.Str = stryr (foder.find ()) {// Subming Sent Streil) "src=/"", "/"");//src="..." String ext = ExStringUtils.defaultIfEmpty(ExStringUtils.substringBetween(str, "data:image/", ";"), "jpg");//Picture suffix String base64ImgData = ExStringUtils.substringBetween(str, "base64,", "/" "); // Dados da imagem se (exstringUtils.isnotblank (ext) && exstringUtils.isnotblank (base64imgdata)) {// dados: imagem/gif; base64, base64 codificado GIF Dados de imagem // dados da imagem/png; if ("jpeg" .equalsignorecase (ext)) {// data: image/jpeg; base64, base64 codificado JPEG Image Data Ext = "jpg"; } else if ("x-icon" .equalsignorecase (ext)) {// data: image/x-icon; base64, base64 Dados da imagem do ícone codificada BASE64 Ext = "ICO"; } String filename = guidutils.buildmd5guid (false)+"."+Ext; // o nome do arquivo a ser armazenado string filepath = fileroot+file.separator+nome do arquivo; // caminho da imagem TRY {ConvertBase64Datatoimage (Base64 Serrimgdata, filepath); htmlContent = htmlcontent.replace (src, serpath); // substitua src pelo endereço do servidor} catch (ioexception e) {e.printStackTrace (); }}} retornar htmlContent;}/*** Converta os dados da imagem base64 em imagem local* @param base64Imgdata* @param filepath* @throws ioexception*/public static void ConvertBase64Datatoimage (Base64Imgdata, string filepathEnchow Base64Decoder (); byte [] bs = d.decodeBuffer (base64Imgdata); FileOutputStream OS = new FileOutputStream (FilePath); OS.WRITE (BS); os.close ();}PS: Aqui estão algumas ferramentas on -line base64 para sua referência:
Base64 Ferramentas de codificação e decodificação:
http://tools.vevb.com/transcoding/base64
Ferramenta de conversão de imagem online64: ferramenta:
http://tools.vevb.com/transcoding/img2base64
Base64 Codificação on-line e decodificação da versão UTF-8:
http://tools.vevb.com/tools/base64_decode-utf8.php
Base64 Codificação on -line e decodificação GB2312 Versão:
http://tools.vevb.com/tools/base64_decode-gb2312.php
Para obter mais informações sobre o conteúdo relacionado a Java, consulte os tópicos deste site: "Resumo das habilidades de operação de codificação Java", "Resumo das habilidades de operação matemática de Java", "Tutorial sobre a estrutura de dados Java e a operação de algoritmo", "Summary of Java e o caráter e as habilidades de operação" Java da operação da Operação Java "Skills" e "Summar Skills e" Summer e Skills of String Skills "Java Operation Dom Skills" e "Summar Skills and Summer e String Skills" Jaable Operation Dom Skills "e" Summar Skills e "Summar Skills of" Java Of Operation of Operation of Node Node "e" Summary Character e String Skills "Jaaby Java Dom Skills" e "
Espero que este artigo seja útil para a programação Java de todos.