首页 新闻 会员 周边

图片转为二进制流

0
[已解决问题] 解决于 2018-12-29 16:24

有没有办法图片的src的base64,换成二进制流,保存进数据库

kuangx的主页 kuangx | 菜鸟二级 | 园豆:334
提问于:2018-12-26 10:10
< >
分享
最佳答案
0

/**

  • 将base64格式的字符串转换成二进制流,并转换成图片
    */
    public boolean changeBase64ToImage(String base64String){
    //base64格式字符串为空,返回false
    if(base64String == null){
    return false;
    }
    BASE64Decoder decoder =new BASE64Decoder();
    try {
    //解码过程,即将base64字符串转换成二进制流
    byte[] imageByte=decoder.decodeBuffer(base64String);

     //生成图片路径和文件名
     String pathString ="F://base64图片.jpg";
     OutputStream out =new FileOutputStream(pathString);
     out.write(imageByte);
     /*
      * 使用流时,都会有一个缓冲区,按一种它认为比较高效的方法来发数据:
      * 把要发的数据先放到缓冲区,缓冲区放满以后再一次性发过去,而不是分开一次一次地发.
      * 而flush()表示强制将缓冲区中的数据发送出去,不必等到缓冲区满.
      * 所以如果在用流的时候,没有用flush()这个方法,很多情况下会出
      * 现流的另一边读不到数据的问题,特别是在数据特别小的情况下.
      */
     out.flush();
     out.close();
     return true;

    } catch (IOException e) {
    // TODO Auto-generated catch block
    return false;
    }
    }

奖励园豆:5
空空ASD | 初学一级 |园豆:76 | 2018-12-26 10:25

String pathString ="F://base64图片.jpg";
OutputStream out =new FileOutputStream(pathString); 这是输出什么

kuangx | 园豆:334 (菜鸟二级) | 2018-12-26 10:29

F://base64图片.jpg 图片路径

kuangx | 园豆:334 (菜鸟二级) | 2018-12-26 10:29

BASE64Decoder decoder =new BASE64Decoder();这是什么

kuangx | 园豆:334 (菜鸟二级) | 2018-12-26 10:32
其他回答(1)
0

kuangx | 园豆:334 (菜鸟二级) | 2018-12-29 16:24
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册