javaweb网页上传图片并显示在页面上,并在服务端存到磁盘(base64编码解码)

最近做一个web项目用到上传图片,于是根据个人的知识 及网上的搜集,将其总结于下:


上传图片时显示图片在页面
 



若想直接展示在页面上,而不点击button,则直接在套上一个 form即可:


              

               
             

             
}


注意:若要通过ajks上传到服务器,则必须在script下对 base64编码中的+号进行转义
var base64=$("#img")[0].src;  //此处得到该图片的SRC中的全部值
var newBase64 = base64.replace(/\+/g, "%2B"); //将base64中的+号转义

最后 服务端接收到页面传过来的全部的BASE64编码后
public String uploadimgsave(String imagepath){
  String url = "";
  OutputStream os=null;
  String ImgPath="D:/img";   //文件存放目录
  String newimagepath=imagepath.replaceAll("data:image/jpeg;base64,", ""); //将编码中的data:image/jpeg;base64,替换
  BASE64Decoder decoder = new BASE64Decoder(); 
  try {
   byte[] b=decoder.decodeBuffer(newimagepath);  //对base64编码解码
   os=new FileOutputStream(ImgPath+"testimage.jpg");  //图片上传保存路径
   os.write(b);
  } catch (Exception e) {
   e.printStackTrace();
  }finally{
    try {
     if(os!=null)
     os.close();
    } catch (IOException e) {
     e.printStackTrace();
    }
  }
  return url;
  
 }

此文是我基本手打 若想要转载请声明 

你可能感兴趣的:(javaweb网页上传图片并显示在页面上,并在服务端存到磁盘(base64编码解码))