此方法将byte类型文件转为文件流保存到本地

byte 经过BASE64Decoder 进行编码之后的类型 所以需要解码 防止出现乱码及文件损毁

  /**
* byte 转文件 下载到本地
* @param fileName
* @param
*/
public String conserveFile(String fileName, String bytes) {
String rootPath = ConversionFactoryUtil.rootPath()+File.separator;
InputStream inputStream = null;
InputStream inputStreams = null; try {
String tempPath = "Files";
String filePath = rootPath+tempPath+File.separator+File.separator+fileName;
// 相对路径
String relativePath =File.separator+ tempPath+File.separator+File.separator+fileName;
inputStream = new ByteArrayInputStream(bytes.getBytes());
// 进行解码
BASE64Decoder base64Decoder = new BASE64Decoder();
byte[] byt = base64Decoder.decodeBuffer(inputStream);
inputStreams = new ByteArrayInputStream(byt);
File folder = new File(rootPath+tempPath+File.separator); // 创建文件夹
if (!folder.exists()){
folder.mkdir();
}
File file = new File(filePath);
if (file.exists()) {
//如果文件存在,则删除文件
file.delete();
}
Files.copy(inputStreams, Paths.get(filePath));
return relativePath;
} catch (IOException e) {
e.printStackTrace();
} finally { if (inputStream != null && inputStreams != null) {
try {
inputStream.close();
inputStreams.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
return null;
}

byte转文件流 下载到本地的更多相关文章

  1. go将青龙面板里面的脚本文件都下载到本地

    纯粹练手用的,大家轻喷 青龙面板的脚本文件可以下载到本地,这样的话自己可以研究一下对应的脚本文件,能学到更多的知识,原理其实很简单,F12一下就知道了,青龙面板使用Request Headers里面放 ...

  2. js文件流下载通用方法

    通常我们会用到文件流下载文件,下面给大家一个通用的文件流下载的js /* *下载文件 * options:{ * url:'', //下载地址 * isNewWinOpen:false,是否新窗口打开 ...

  3. Github文件夹下载到本地

    1.如图:需要将以下文件夹下载到本地. https://github.com/aspnet/Docs/tree/master/aspnet/mvc/overview/getting-started/i ...

  4. 安装时后的idea,项目不能运行,pom.xml文件不能下载到本地仓库,maven配置是正确的

    安装时后的idea,项目不能运行,pom.xml文件不能下载到本地仓库,maven配置是正确的 项目上传到svn后,同事下载项目后,没有识别出来mavn中的pom.xml文件,导致idea不能自动下载 ...

  5. js实现使用文件流下载csv文件

    1. 理解Blob对象 在Blob对象出现之前,在javascript中一直没有比较好的方式处理二进制文件,自从有了Blob了,我们就可以使用它操作二进制数据了.现在我们开始来理解下Bolb对象及它的 ...

  6. 文件流下载时 axios blob文件大小不正确?

    文件流下载时 js blob文件大小不正确? res.data的字节长度 length blob.size匹配不上.. axio请求里必须修改 responseType: 'blob' 参数, 默认是 ...

  7. js 前端实现文件流下载的几种方式

    后端是用Java写的一个下载的接口,返回的是文件流,需求:点击,请求,下载 利用iframe实现文件流下载 //把上一次创建的iframe删掉,不然随着下载次数的增多页面上会一堆的iframe var ...

  8. 通过阿里OSS文件服务返回的URL获取文件流下载

    我们都知道将文件上传到阿里的OSS文件服务上后,可以通过generatePresignedUrl(bucketName, key, expiration)方法获取该文件的防问路径,但是当我们知道该文件 ...

  9. ASP.NET 实现Base64文件流下载PDF

    因为业务需要调用接口获取的是 Base64文件流 需要提供给客户下载PDF文档 源码部分借鉴网上,具体地址忘记了. //Base64文件流 byte[] buffer = Convert.FromBa ...

随机推荐

  1. python实例、类方法、静态方法

    [python实例.类方法.静态方法] 参考:http://blog.163.com/yang_jianli/blog/static/161990006201122411586729/

  2. leetcode 21 Merge Two Sorted Lists 合并两个有序链表

    描述: 合并两个有序链表. 解决: ListNode* mergeTwoLists(ListNode* l1, ListNode* l2) { if (!l1) return l2; if (!l2) ...

  3. Java初学者不得不知的概念,JDK,JRE,JVM的区别?(转)

    JVM(Java Virtual Machine Java虚拟机)可以理解为是一个虚拟出来的计算机,具备着计算机的基本运算方式,它主要负责将java程序生成的字节码文件解释成具体系统平台上的机器指令. ...

  4. Android布局属性说明

    Android布局LinearLayout注意设置属性android:orientation属性,否则有的组件可能无法显示. 该属性不设置时默认为horizontal.此时第一个控件的宽度若设置成“f ...

  5. python 命令行工具 fire

    简介 A library for automatically generating command line interfaces. Python Fire is a library for auto ...

  6. html 中的<script>标签

    https://www.w3.org/TR/html51/semantics-scripting.html#the-script-element 一. <script type='text/ja ...

  7. PHP(三)运算符、流程控制和函数初步

  8. 如何在Windows环境下安装Linux系统虚拟机

    如何在Windows环境下安装Linux系统虚拟机 本篇经验写给想要入门学习C语言的小白们.Windows系统因为使用窗口图形化,操作简单,功能多样,所以我们在Windows环境下可以做到很多,但想要 ...

  9. java中父类的静态方法不能被重写

    Java中父类的静态方法确实不能被重写的,但是有的人可能去做实验发现在子类中去重写父类static方法时,并没什么问题.这里我来具体解释下. public class Parent { public ...

  10. [SAP]编辑表

    SAP中,不能直接修改表的内容,可以用SE16N进行调试打开编辑选项,进行修改. (注:直接修改数据有风险,首先要确认修改数据的关系或做好必要的备份) 1:运行SE16N ,填好表名,参数等. 2:在 ...