前言
最近需要实现功能:
byte数组转为bin文件存储
找到一篇使用方便的:
Java根据byte数组,生成文件
转载关键内容如下:
工具类
package com.seesun2012.utils;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
/**
*根据byte数组,生成文件
*
* @author seesun2012@163.com
*
*/
public class FileUtil {
/**
* 根据byte数组,生成文件
* filePath 文件路径
* fileName 文件名称(需要带后缀,如*.jpg、*.java、*.xml)
*/
public static void getFile(byte[] bfile, String filePath,String fileName) {
BufferedOutputStream bos = null;
FileOutputStream fos = null;
File file = null;
try {
File dir = new File(filePath);
if(!dir.exists() && !dir.isDirectory()){//判断文件目录是否存在
dir.mkdirs();
}
file = new File(filePath + File.separator + fileName);
fos = new FileOutputStream(file);
bos = new BufferedOutputStream(fos);
bos.write(bfile);
} catch (Exception e) {
e.printStackTrace();
} finally {
if (bos != null) {
try {
bos.close();
} catch (IOException e1) {
e1.printStackTrace();
}
}
if (fos != null) {
try {
fos.close();
} catch (IOException e1) {
e1.printStackTrace();
}
}
}
}
}
结语
使用了一次可行。
在这篇博文下方有些回复认为: 写出的文件无法打开,提示文件已损坏怎么解决?
对此我的认知为需要从原始数据角度考虑,可能他们存入的数据需要进行转换,可以通过获取一个文件的byte流再用上述这个工具类生成目标文件来验证此工具类是否可用。
(但是我自己没做验证,因为我只需要bin文件,bin文件转换是成功的)