博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
(六)IO流之过滤流
阅读量:6145 次
发布时间:2019-06-21

本文共 2330 字,大约阅读时间需要 7 分钟。

过滤字节流FilterInputStream和FilterOutputStream

BufferedInputStream和BufferedOutputStream    需要使用已存在的节点流来构造,提供了带缓冲的读写,提高了读写的效率

package com.tanlei.InputOutputStream;import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;public class BufferedInputOutputDemo {    public static void main(String[] args) {        try {            FileUtil1.copyFile(new File("C:\\zhangsan\\tanlei.txt"), new File("D:\\zhangsan.txt"));        } catch (IOException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }    } }class FileUtil1{    public  static  void  copyFile(File src,File dst) throws IOException {        FileInputStream fis=new FileInputStream(src);        FileOutputStream fos=new FileOutputStream(dst);        BufferedInputStream bis=new BufferedInputStream(fis);        BufferedOutputStream bos=new BufferedOutputStream(fos);                long time=System.currentTimeMillis();        int data=0;//用来保存实际读到的字节数        while ((data=bis.read())!=-1) {            bos.write(data);        }        bis.close();        bos.close();        long time2=System.currentTimeMillis();        System.out.println("共花费+"+(time2-time));    }}

DataInputStream和DataOutputStream   基本数据类型进行操作

package com.tanlei.InputOutputStream;import java.io.DataInputStream;import java.io.DataOutputStream;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;public class DataInputOutputDemo {   public static void main(String[] args) throws IOException {     String name="tanlei";     int age=20;     boolean flag=true;     char sex='男';     double money=110.56;          DataOutputStream dos=new DataOutputStream(new FileOutputStream("D:\\aa.txt"));     dos.writeUTF(name);     dos.writeInt(age);     dos.writeDouble(money);     dos.writeChar(sex);     dos.writeBoolean(flag);     dos.close();          DataInputStream dis=new DataInputStream(new FileInputStream("D:\\\\aa.txt"));     System.out.println(dis.readUTF());     System.out.println(dis.readInt());     System.out.println(dis.readDouble());     System.out.println(dis.readChar());     System.out.println(dis.readBoolean());     dis.close();   }}

总结:

提供带缓冲的读写

转载于:https://www.cnblogs.com/tanlei-sxs/p/9665568.html

你可能感兴趣的文章
有趣的数学书籍
查看>>
teamviewer 卸载干净
查看>>
多线程设计模式
查看>>
解读自定义UICollectionViewLayout--感动了我自己
查看>>
SqlServer作业指定目标服务器
查看>>
User implements HttpSessionBindingListener
查看>>
抽象工厂方法
查看>>
焊盘 往同一个方向增加 固定的长度方法 总结
查看>>
eclipse的maven、Scala环境搭建
查看>>
架构师之路(一)- 什么是软件架构
查看>>
jquery的冒泡和默认行为
查看>>
USACO 土地购买
查看>>
【原创】远景能源面试--一面
查看>>
B1010.一元多项式求导(25)
查看>>
10、程序员和编译器之间的关系
查看>>
前端学习之正则表达式
查看>>
配置 RAILS FOR JRUBY1.7.4
查看>>
AndroidStudio中导入SlidingMenu报错解决方案
查看>>
修改GRUB2背景图片
查看>>
Ajax异步
查看>>