public static byte[] File2byte(String filePath)
{
byte[] buffer = null
try
{
File file = new File(filePath)
FileInputStream fis = new FileInputStream(file)
ByteArrayOutputStream bos = new ByteArrayOutputStream()
byte[] b = new byte[1024]
int n
while ((n = fis.read(b)) != -1)
{
bos.write(b, 0, n)
}
fis.close()
bos.close()
buffer = bos.toByteArray()
}
catch (FileNotFoundException e)
{
e.printStackTrace()
}
catch (IOException e)
{
e.printStackTrace()
}
return buffer
}
public static void byte2File(byte[] buf, 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.writ
Java 文件和byte数组转换/**
* 获得指定文件的byte数组
*/
private byte[] getBytes(String filePath){
byte[] buffer = null
try {
File file = new File(filePath)
FileInputStream fis = new FileInputStream(file)
ByteArrayOutputStream bos = new ByteArrayOutputStream(1000)
byte[] b = new byte[1000]
int n
while ((n = fis.read(b)) != -1) {
bos.write(b, 0, n)
}
fis.close()
bos.close()
buffer = bos.toByteArray()
} catch (FileNotFoundException e) {
e.printStackTrace()
} catch (IOException e) {
e.printStackTrace()
}
return buffer
}
/**
* 根据byte数组,生成文件
*/
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+"\\"+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()
}
}
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)