IO流

IO流概述:

    IO流就是用来传输数据的。I:input(输入) O:output(输出)。

    按操作可分为字节流和字符流。

      1、字节流:可操作任意类型的文件,但是操作中文的时候,可能会出现乱码。  

        字节流输入流:InputStream

        字节流输出流:OutputStream

      2、字符流:一般是用来操作中文的。

        字符流输入流:Reader

        字符流输出流:Writer

 

字节流复制文件:

 1 public class Test2 {
 2 
 3     public static void main(String[] args) throws IOException {   //抛异常
 4         FileInputStream fis = new FileInputStream("D:\\file.txt");  //需要读取的文件
 5         FileOutputStream fos = new FileOutputStream("123.txt");        //需要复制的文件
 6         byte[] bys = new byte[1024];                                //每次读取的字节数
 7         int len = 0;        //定义一个变量记录读取到的字节数
 8         while((len=fis.read(bys))!=-1){        //循环读取, 并将读取到的内容记录给变量.  如果为-1说明已经读取完毕    
 9             fos.write(bys, 0, len);;        //以1024个字节复制文件  0~len为有效字节
10         }
11         fis.close();    //关流
12         fos.close();
13     }
14 
15 }
View Code

 

字符流复制文件:

 1 public class Test2 {
 2     public static void main(String[] args) throws IOException {
 3         FileReader fr = new FileReader("D:\\file.txt");   //需要复制的文件
 4         FileWriter fw = new FileWriter("123.txt");            //复制文件的文件名
 5         
 6         int len = 0;    //变量记录读取到的字符
 7         
 8         while((len=fr.read())!=-1){    //循环读取
 9             fw.write(len);    
10         }
11         
12         //关流
13         fr.close();    
14         fw.close();
15     }
16 
17 }
View Code

 

 

 

随笔说:

          字节流常用于拷贝图片,音频,视频等,字符流常用于拷贝记事本打开能看懂的文本。 

              字节流一次读取一个字节,字符流一次读取一个字符。 所以用数组来读取速度会快很多。

      

            

posted @ 2017-08-18 20:25  B_Lasting_尊  阅读(136)  评论(0编辑  收藏  举报