采用base64编码上传图片
来源:互联网 发布:如何引出大数据 编辑:程序博客网 时间:2024/05/18 02:54
需求:前端将图片转化为base64编码数据,传到后台,再将图片上传到服务器特定位置。
public class UploadTool { /** * 上传图片 * * @param base64 * 图片编码后的字符串 * @return 上传成功后的文件名 */ public static String upload(String base64) { if ((base64 != null) && !(base64.equals(""))) { // upload是图片上传路径 String dir = ServletActionContext.getServletContext().getRealPath("/upload"); File fileLocation = new File(dir); // 判断上传路径是否存在,如果不存在就创建 if (!fileLocation.exists()) { boolean isCreated = fileLocation.mkdir(); if (!isCreated) { // 目标上传目录创建失败,可做其他处理,例如抛出自定义异常等,一般应该不会出现这种情况。 return null; } } if (base64.indexOf("jpeg") != -1) { // base64字串中有jpeg字串,这是一个4个字的,而我这里是把base64字串的指定位置的字串来作为上传 // 文件类型的判断依据,所以在大部分都是三个字的文件类型下就得把jpeg改成jpg了 base64 = base64.replaceFirst("jpeg", "jpg"); } // 生成一个唯一的文件名 Random random = new Random(); int rannum = (int) (random.nextDouble() * (99999 - 10000 + 1)) + 10000;// 获取5位随机数 String thisdate = (new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")).format(new Date()).replace(":", "_") .replace(" ", "_"); String newphotoname = "yuefu8_" + rannum + "_" + thisdate + "." + base64.substring(11, 14); FileOutputStream out; String iconBase64 = base64.substring(22); try { byte[] buffer = new BASE64Decoder().decodeBuffer(iconBase64); out = new FileOutputStream(dir + "/" + newphotoname); out.write(buffer); out.close(); return newphotoname; } catch (FileNotFoundException e) { e.printStackTrace(); return null; } catch (IOException e) { e.printStackTrace(); return null; } }else{ return null; } }}
0 0
- 采用base64编码上传图片
- iOS 图片base64编码 上传
- base64编码图片上传不了
- 上传base64编码图片到七牛云
- 第二篇 上传图片和Base64编码
- 图片压缩,Base64编码后上传服务器
- HTML5上传图片base64编码显示缩略图
- iOS post请求图片Base64编码上传
- js图片转base64编码压缩上传
- 如何上传base64编码图片到七牛云
- 本地上传图片 进行base64编码 demo
- 今天用base64编码上传图片时,图片老是错误
- base64编码的文本 转为 图片 实现上传保存
- base64编码上传图片java后台接收实例
- 通过base64字符串之间的编码解码实现图片上传
- 采用AFNetWorking 上传base64的图片到服务器,上传的图片解析不了。ASIHttpRequest上传是可以的,请教!
- base64编码图片
- Base64编码图片转化
- 关于重装系统后部分文件呈绿色的原因
- Android 高手进阶之自定义View,自定义属性(带进度的圆形进度条)
- IntelliJ IDEA导入已经存在的java代码
- AXIS2实现webservice
- sfasfsf
- 采用base64编码上传图片
- fgets
- 备忘录模式
- Java字符串常量池和编译器的优化问题
- SQL多表操作、插入、更新、删除(mysql)
- mongodb性能优化
- shell中$0,$?,$!等的特殊用法
- 37-使用 kill 函数发送信号
- 如何使用指针从函数返回一个数组。