• IO流


    IO流

    概述:把数据的传输这种流动按照流动的方向以内存为基准分别为inout和output数据流向内存输入流 流出内存的是输出流

    java中IO操作再IO包下进行输入和输出得操作 输入---》读取数据   输出也叫写出数据             存东西叫输出     读东西叫输入

    IO分类 

    根据数据得流向分输入流和输出流

    输入流:把数据从其他设备 读取到内存中

    输出流:把数据从内存中写出其他设备

    根据数据类型分为:  字节流  字符流

    字节流: InoutSteam     outputSteam

    字符流:reader      writer

    字节流:一切皆为字节

    图片视频都是以二进制得方式存储 一个一个字节   字节流可以读任何文件

    字节输出流:

      OutputStream------》File  OutputStream

            close(); 关流

            flush();刷新

            write(byte  [ ]  btye);

      File OutputStream(File  File);

      File OutputStream(String  String);

    File InputSteam

      java.io.InputStream 是所有字节流输入流的超类

      read();读取下一个字节

      read(byte [ ] byte);

      close();

    File InputStream extends  InputStream

    File InputStream  文件字节输入流

    作用:把硬盘上的数据读取到内存里

    如何用:FileInputStream(String name);String name 是路径

    字节输入流的使用步骤(重点)

      1、创建FileInputStream对象  构造方法中要绑定读取的数据源

      2、s使用对象read()读取文件

      3、释放资源

    读取是一个重复的过程用循环fis.read();读不到返回-1

    字节输入流一次读取多个字节

    read(byte [ ] byte);

    byte [ ] 参数作用:

      起到缓冲作用  读取是多个字节  数组长度 1024(1kb)

    File Reader 成为文件字符输入流

    使用步骤:1、使用Fille Reader对象构造方法当中绑定读取数据的数据源

         2、使用该对象中的方法读取数据read();

         3、释放资源

    java.io.writer:字符输出流  抽象类

    方法:write();

       flush();

       close();

    作用:将内存中的数据写入到文件中

    步骤:1、创建Filewriter 对象  数据目的地

       2、用对象中的方法write()

       3、flush()---》将缓冲区当中数据写到文件中

       4、释放资源

    续写换行:File  write(String  fileName ,boolean   append);

    换行符号:windows:

         linux:   /n

         mac: /r

    在jdk1.7之前使用try catch finally处理流中的异常

      rry{可能会出现异常的代码}

      catch(异常的变量    变量名){  异常处理逻辑}

      finglly{一定会执行代码  释放资源}

    jdk1.9新特性

      try前面可以定义流对象

      在try后面()中可以直接引入流对象的名称(变量名)

      在try代码执行完毕以后 流对象可以释放掉 不用写finally

    Properties

    java.util.proper.ties集合extends  Hashtable<k,v> implements Map<k,v>持久的属性集 Properties 可以保存在流中或者从流中加载唯一的一个和IO流相结合的集合

    store 把流中临时的数据持久化到硬盘中

    Load 把硬盘中的文件(键对值)读取到集合中使用

    使用properties集合存储数据遍历取出

    properties集合有一些操作字符串的方法:

      setProperties(String key,String value);

      getProperties(String key);

      String PropertyNames();相当于keyset方法

    缓冲流

      字节缓冲输出流:BufferedOutputStream   extends  OutputStream

      close();

      plush(); 

      writer();

    使用步骤:1、创建FileOutputSteam 对象

         2、创建Buffered OutStream对象

         3、使用BufferedOutSteam中的方法 write():写到缓冲区

         4、使用BufferedOutSteam中的方法flush();

         5、释放资源

    字节传冲输入流:

      BufferedInputSteam

      read();

      close();

    构造方法:

      new BufferedInputStream(Input Stream in);

    用缓冲区读取数据的步骤

      1、创建FileInputStream对象

      2、创建BufferedInputStream对象

      3、调用read();

      4、释放资源

      

    写的不好,如果有大佬想补充的可以在评论区留言

        

       

  • 相关阅读:
    WIFI芯片,结构光和ToF
    Ubuntu + Python
    React-Native 报错处理
    GPS && AGPS
    Feed流
    Kafka基础知识总结
    Kafka海量日志收集架构之Watcher监控告警-watcher 基础语法与使用
    4-23学习心得
    4-22 学习心得
    4-21学习心得
  • 原文地址:https://www.cnblogs.com/zhaowenyang/p/10943057.html
Copyright © 2020-2023  润新知