zoukankan      html  css  js  c++  java
  • Java IO流简介

    一.定义

      IO是In和Out,即输入和输出,指的是程序与外部设备间的数据传递。Java是用流(Stream)的方式来进行数据操作,这里就称为IO流,操作流的对象都在IO包上。

    二.IO流的分类

      根据不同分类方式有几种分类。

      1.按数据流的方向:输入流、输出流。

      2.按处理数据单位:字节流、字符流。

      3.按功能:节点流、处理流。

      网上的图。

    三.IO流方法

    1.字节流

      InputStream,所有字节输入流的抽象基类。

    //InputStream主要方法
    
    //从输入流中读取数据的下一个字节
    read();
    
    //从输入流中读取一定数量的字节,并将其存储在缓冲区数组 b中
    read(byte[] b);
    
    //将输入流中最多len个数据字节读入 byte 数组
    read(byte[] b, int off, int len);
    
    //关闭此输入流并释放与该流关联的所有系统资源
    close();

      OutputStream,所有字节输出流的抽象基类。

    //OutputStream主要方法
    
    //将 b.length 个字节从指定的 byte 数组写入此输出流
    write(byte[] b);
    
    //将指定 byte 数组中从偏移量 off 开始的 len 个字节写入此输出流
    write(byte[] b, int off, int len);
    
    //将指定的字节写入此输出流
    write(int b);
    
    //关闭此输出流并释放与此流有关的所有系统资源
    close();
    
    //刷新此输出流并强制写出所有缓冲的输出字节
    flush();

    2.字符流

      Reader,所有字符输入流的抽象基类。

    //Reader主要方法
    
    //读取单个字符
    read();
    
    //将字符读入数组
    read(char[] cbuf);
    
    //将字符读入数组的某一部分
    read(char[] cbuf, int off, int len);
    
    //跳过字符
    skip(long n);
    
    //关闭该流并释放与之关联的所有资源
    close();

      Writer,所有字符输出流的抽象基类。

    //Writer常用方法
    
    //写入字符数组
    write(char[] cbuf);
    
    //写入字符数组的某一部分
    write(char[] cbut, int off, int len);
    
    //写入单个字符
    write(int c);
    
    //写入字符串的某一部分
    write(String str, int off, int len);
    
    //将指定字符添加到此 writer
    append(char c);
    
    //将指定字符序列添加到此 writer
    append(CharSequence csq);
    
    //将指定字符序列的子序列添加到此 writer.Appendable
    append(CharSequence csq, int start, int end);
    
    //关闭此流,但要先刷新它
    close();
    
    //刷新该流的缓冲
    flush();

    四.总结

      1.IO流是用来处理与外部设备间的数据传递。

      2.Java中IO流的使用,根据不同类型划分有不同方法,如按流的方向划分,按数据单位划分。

  • 相关阅读:
    保持URL不变和数字验证
    centOS ftp key?
    本地环境测试二级域名
    linux 解决You don't have permission to access 问题
    php smarty section loop
    php header Cannot modify header information headers already sent by ... 解决办法
    linux部分命令
    Linux 里面的文件操作权限说明
    用IT网络和安全专业人士视角来裁剪云的定义
    SQL Server 2008 R2炫酷报表"智"作有方
  • 原文地址:https://www.cnblogs.com/shadoll/p/14452520.html
Copyright © 2011-2022 走看看