麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 開發(fā) > Java > 正文

Java實現(xiàn)base64圖片編碼數(shù)據(jù)轉(zhuǎn)換為本地圖片的方法

2024-07-14 08:41:19
字體:
供稿:網(wǎng)友

本文實例講述了Java實現(xiàn)base64圖片編碼數(shù)據(jù)轉(zhuǎn)換為本地圖片的方法。分享給大家供大家參考,具體如下:

項目中用到的把base64圖片數(shù)據(jù)轉(zhuǎn)為本地圖片的函數(shù)

/*** 替換html中的base64圖片數(shù)據(jù)為實際圖片* @param html* @param fileRoot 本地路徑* @param serRoot 服務(wù)器路徑* @return*/public static String replaceBase64Image(String html,String fileRoot,String serRoot){  File file = new File(fileRoot);  if(!file.exists()){//文件根目錄不存在時創(chuàng)建   new File(fileRoot).mkdirs();  }  String htmlContent = html;  Pattern pattern = Pattern.compile("//<img[^>]*src=/"data:image/[^>]*>");  Matcher matcher = pattern.matcher(html);  GUIDUtils.init();  while(matcher.find()){  //找出base64圖片元素   String str = matcher.group();   String src = ExStringUtils.substringBetween(str, "src=/"", "/"");//src="..."   String ext = ExStringUtils.defaultIfEmpty(ExStringUtils.substringBetween(str, "data:image/", ";"), "jpg");//圖片后綴   String base64ImgData = ExStringUtils.substringBetween(str, "base64,", "/"");//圖片數(shù)據(jù)   if(ExStringUtils.isNotBlank(ext)&&ExStringUtils.isNotBlank(base64ImgData)){    //data:image/gif;base64,base64編碼的gif圖片數(shù)據(jù)    //data:image/png;base64,base64編碼的png圖片數(shù)據(jù)    if("jpeg".equalsIgnoreCase(ext)){//data:image/jpeg;base64,base64編碼的jpeg圖片數(shù)據(jù)     ext = "jpg";    } else if("x-icon".equalsIgnoreCase(ext)){//data:image/x-icon;base64,base64編碼的icon圖片數(shù)據(jù)     ext = "ico";    }    String fileName = GUIDUtils.buildMd5GUID(false)+"."+ext;//待存儲的文件名    String filePath = fileRoot+File.separator+fileName;//圖片路徑    try {     convertBase64DataToImage(base64ImgData, filePath);//轉(zhuǎn)成文件     String serPath = serRoot+fileName;//服務(wù)器地址     htmlContent = htmlContent.replace(src, serPath);//替換src為服務(wù)器地址    } catch (IOException e) {     e.printStackTrace();    }   }  }  return htmlContent;}/*** 把base64圖片數(shù)據(jù)轉(zhuǎn)為本地圖片* @param base64ImgData* @param filePath* @throws IOException*/public static void convertBase64DataToImage(String base64ImgData,String filePath) throws IOException {  BASE64Decoder d = new BASE64Decoder();  byte[] bs = d.decodeBuffer(base64ImgData);  FileOutputStream os = new FileOutputStream(filePath);  os.write(bs);  os.close();}

 

希望本文所述對大家java程序設(shè)計有所幫助。


注:相關(guān)教程知識閱讀請移步到JAVA教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 毛片网站视频 | 久久国产精品影视 | 国产午夜精品理论片a级探花 | 欧美视频一区二区三区在线观看 | 久久久久久亚洲国产精品 | 欧美精品一区二区久久 | 欧美一区二区黄 | 91a在线观看 | 亚洲视频成人 | av在线1 | 性欧美视频在线观看 | 欧美成人小视频 | 国产精品性夜天天视频 | 欧美18videos性处按摩 | 日韩字幕在线观看 | 香蕉秀 | 九九热精品在线 | 国产精品久久久久久238 | 黄色av免费| japanesexxxxxxxhd | 国产1区在线观看 | 欧美成人精品一区二区三区 | 日韩视频中文 | 国产18视频 | 怦然心动50免费完整版 | 高清国产午夜精品久久久久久 | 依依成人精品视频 | 久久久久久久久久美女 | 国产chinesehd精品91 | 欧美一级精品片在线看 | 久久91精品国产91久久yfo | 亚洲国产精品一区二区三区 | 久久伊人精品热在75 | 羞羞色在线观看 | 欧美成人黄色小视频 | 激情综合婷婷久久 | 精品三区视频 | av免费在线播放网址 | 成人福利电影在线观看 | 国产精品99久久久久久大便 | 激情大乳女做爰办公室韩国 |