为了账号安全,请及时绑定邮箱和手机立即绑定

Java 文件和byte数组转换

public class T3 {

public static void main(String[] args){  
    String filePath = "E:\\softoon\\workspace_softoon\\TestMobile\\src\\1.docx";  
    String outFilePath = "E:\\softoon\\workspace_softoon\\TestMobile\\src";  
    String outFileName = "2.docx";  

    getFile(getBytes(filePath),outFilePath,outFileName);  
}  

/** 
 * 获得指定文件的byte数组 
 */  
public static 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();  
            }  
        }  
    }  
}  

}

点击查看更多内容
1人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
JAVA开发工程师
手记
粉丝
168
获赞与收藏
3550

关注作者,订阅最新文章

阅读免费教程

感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消