美文网首页
上传图片到指定路径工具类(非OSS)

上传图片到指定路径工具类(非OSS)

作者: writeanewworld | 来源:发表于2018-09-29 14:14 被阅读0次
// 如果从数据库中找不到已经存在的url,就直接上传图片,否则上传成功之后删除原图
    String oldPath = Optional.of(res)
            .map(CommonResult::getValues)
            .filter(brandInfos -> !brandInfos.isEmpty())
            .map(c -> c.get(0))
            .map(BrandInfo::getLogoUrl)
            .orElse(null);


    String[] endPath = picture.getContentType().split("/");

    //保存
    String fileName = UUID.randomUUID().toString() + "." + endPath[1];

    String url = filefolder + fileName;
    InputStream in = null;

    try {
        in = picture.getInputStream();
    }catch (IOException e){
        LOG.error("图片保存失败");
        return result;
    }   

public static boolean saveFile(String url, InputStream inputStream) {
    OutputStream outputStream = null;

    try {
        //判断文件是否为空
        if(inputStream==null || inputStream.available()==0){
            return false;
        }

        //保存文件
        outputStream = new FileOutputStream(url);
        byte[] buffer = new byte[1024];
        int len = 0;

        while((len = inputStream.read(buffer))!=-1){
            outputStream.write(buffer,0,len);
        }

    }catch (IOException e){
        e.printStackTrace();
        return false;
    }finally {
        if(inputStream!=null){
            try {
                inputStream.close();
            }catch (IOException e){
                e.printStackTrace();
            }
        }
        if(outputStream!=null){
            try {
                outputStream.close();
            }catch (IOException e){
                e.printStackTrace();
            }
        }

    }
    return true;
}

public static boolean deleteFile(String url) {
    File file = new File(url);
    try {
        file.delete();
    }catch (Exception e){
       return false;
    };

    return true;
}

相关文章

网友评论

      本文标题:上传图片到指定路径工具类(非OSS)

      本文链接:https://www.haomeiwen.com/subject/albvoftx.html