码迷,mamicode.com
首页 > 其他好文 > 详细

IO流---字节流

时间:2016-09-30 02:32:09      阅读:129      评论:0      收藏:0      [点我收藏+]

标签:

基本操作与字符流的类相同

但它不仅可以操作字符,还可以操作其他媒体文件。如拷贝jpg文件,MP3等,字符流只能操作文本文件

两个顶层基类:

InputStream

OutputStream

 

字符流中使用的是字符数组char[],字节流中使用的字节数组byte[],参看write的参数来对比。

 

FileOutputStream fos=new FileOutputStream("a.txt");创建字节输出流对象,用于操作文件

fos.write("abcd".getBytes());写数据,只能写入字节或字节数组,不能直接写入字符串

fos.close();

可以不flush,直接写入到目的地中,不需要缓存的,因为是最小的单元,不需要编解码。

OutputStream类里的flush方法,什么操作都没有,FileOutputStream 就没有重写该方法。

 

//1,创建一个读取流对象。和指定文件关联。
        FileInputStream fis = new FileInputStream("bytedemo.txt");
        
               读取方式一:
        System.out.println(fis.available());
        byte[] buf = new byte[fis.available()];        
        fis.read(buf);
        System.out.println(new String(buf));

        读取方式二:
        //建议使用这种读取数据的方式
        byte[] buf = new byte[1024];        
        int len = 0;
        
        while((len=fis.read(buf))!=-1){
            System.out.println(new String(buf,0,len));
        }
        
        
//        int ch = 0;
//        while((ch=fis.read())!=-1){
//            System.out.println((char)ch);
//        }
        
        //一次读取一个字节。
//        int ch = fis.read();        
//        System.out.println(ch);
        
        fis.close();

 

IO流---字节流

标签:

原文地址:http://www.cnblogs.com/lxboy2009/p/5922382.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!