黑马程序员技术交流社区

标题: 字节流(总结) [打印本页]

作者: zhoubinjian    时间: 2016-4-23 03:02
标题: 字节流(总结)
字节流

FileInputStream fis=new FileInputStream("fos.txt");//建立一个读取的字节流

byte[] buf=new byte[fis.available()];//定义一个数组,长度是刚刚好是字节 的长度,不用再循环了。注意:available()是字节流特有的方法。返回的是int类型,字节 的长度

复制一个图片:思路  注意:字符流也可以复制,不过容易出错,导致复制的文件打不开。
1.用字节读取流对象和图片相关联。
2.用字节写入流对象创建一个图片文件,用于存储获取到的图片数据。
3.通过循环读写操作,完成数据的存储。
4.关闭资源。

FileInputStream fis=null;
FileOutputStream fos=null;
try
{
        fos=new FileOutputStrea("目标文件");
        fis=new FileInputStrea("复制文件");
        byte[] arr=new byte[1024];
        int num=0;
        while((num=fis.read(arr))!=-1)
                {
                        fos.write(arr,0,num);
                }
}
catch
{}~~~~~~

自定义字节流的缓冲区
read()和write()的特点:
read()会提升读取的字节。
write()会向下转型,输出有效位(指定位)
这样是避免读取到的是字节是-1,导致循环不能进行。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2