Java之数据流-复制二进制文件

 

 1 package test_demo.fileoper;
 2 
 3 import java.io.*;
 4 
 5 /*
 6 * 数值字节流操作,复制二进制文件
 7 * 输入流:从文件中读取数据,扩展为数据流(二进制)
 8 * 输出流:将数据流数据输出到文件中
 9 * 注意关闭输入输出流
10 * */
11 public class DataInOutSteamOper {
12     public static void main(String args[]) {
13         FileInputStream fis = null; //输入流
14         FileOutputStream fos = null;    //输出流
15         //数据流(二进制)
16         DataInputStream dis = null;
17         DataOutputStream dos = null;
18 
19         try {
20             fis = new FileInputStream("C:\\testdata\\filedir\\a.jpg");
21             fos = new FileOutputStream("C:\\testdata\\filedir\\b.jpg");
22             dis = new DataInputStream(fis);
23             dos = new DataOutputStream(fos);
24             int i = 0;  //存放读取的byte数组的长度
25             //通过输入流读取数据,byte[]有默认值
26             while ((i = dis.read()) != -1) {
27                 dos.write(i);
28             }
29             System.out.println("文件复制成功!");
30         } catch (IOException e) {
31             e.printStackTrace();
32         } finally {
33             try {
34                 //关闭输入输出流
35                 dos.close();
36                 fos.close();
37                 dis.close();
38                 fis.close();
39             } catch (IOException e) {
40                 e.printStackTrace();
41             }
42         }
43     }
44 }

 

posted @ 2017-12-06 14:11  星瑞  阅读(2444)  评论(0编辑  收藏  举报