美文网首页程序员
javaIO流---节点流的重要方法

javaIO流---节点流的重要方法

作者: 一花一世界yu | 来源:发表于2020-05-02 23:41 被阅读0次

    一、重点知识

    getname获得的是文件名

    getpath()获得你开始定义时声明的文件路径

    字节流是一个最根本的流,数据的本质就是以字节为单位存储的

    四个读写流基类都是抽象得

    只有空文件夹才可以直接删,文件夹里面有空文件夹他也算有文件

    进行遍历操作时,你要想好迭代的条件能否满足获得每一个文件和文件名这个目的

    read(byet[])返回的为实际读入的数据量,一旦读不到数据了,就返回-1

    流中的数组读入数据进行的是覆盖操作,新读入的数据,覆盖原来的数据

    avaliable()计算还有多少个字节未读

    skip(long)跳过多少个字节读

    节点流每次写入数据,都会重新在开头位置写入

    输出流写出换行“\r\n”

    输出流写出文件时如果文件不存在那么会自动创建,但文件夹不存在会报错,找不到此路径

    fileoutputstream用构造方法带boolean append得可以不覆盖在文件末尾添加数据

    二、重点问题

    1、向文件中写数据的时候,如果文件不存在,能写吗?如果文件所在的文件夹不存在,能写吗?

    如果文件不存在,FileOutputStream在写出数据的时候,会先创建文件,再写出。

    但是如果文件夹不存在,那么就报错。(java.io.FileNotFoundException: C:\Ruby\pro\aa\bb\abc.txt (系统找不到指定的路径。)

    2、能不清空的写,在最后添加

    FileOutputStream(path)-->开头写

    FileOutputStream(path , append-->true)-->末尾写

    三、课堂知识

    3.1、4大基类流

    InputStream,字节输入流:抽象的

    OutputStream:字节输出流:抽象的

    Reader:字符输入流:抽象的

    Writer:字符输出流:抽象的

    3.2、IO流的操作步骤

    step1:确定数据从哪到哪。文件信息。

    step2:创建流:

    流向:输入,输出

    单位:字节,字符

    子类流:文件,内存

    step3:操作流

    读取数据:输入

    read()

    写出数据:输出

    write()

    step4:关闭流

    close()

    3.3、FileInputStream

    用于以字节为单位,读取文件中的数据,到程序中。

    1、构造方法:

    FileInputStream(String name)

    通过打开与实际文件的连接来创建一个 FileInputStream ,该文件由文件系统中的路径名 name命名。

    FileInputStream(File file)

    通过打开与实际文件的连接创建一个 FileInputStream ,该文件由文件系统中的 File对象 file命名。

    read()-->int

    每次读取一个字节。返回值就是读入的数据本身。如果读到文件的末尾了,-1。

    read(byte[] bs)-->int

    每次读取多个字节,最多是bs数组的长度个。返回值是本次读取的实际的字节个数。如果到达末尾,-1.

    int read(byte[] bs, int off, int len)

    从该输入流读取最多 len字节的数据为字节数组 。第一个参数表示要存储本地读取的数据的数组,第二个参数,表示从哪个下标开始存储,第三个参数是表示本次读取预计的读取数量。该方法的返回值是本次读取的实际数量。如果到达文件末尾,-1。

    3.4、FileOutputStream

    构造方法:

    FileOutputStream(String name) ,在文件开头写,

    创建文件输出流以指定的名称写入文件。

    FileOutputStream(String name, boolean append) ,在文件的末尾写数据,追加

    创建文件输出流以指定的名称写入文件。

    FileOutputStream(File file) ,在文件开头写,擦除写

    创建文件输出流以写入由指定的 File对象表示的文件。

    FileOutputStream(File file, boolean append) ,在文件的末尾写数据,追加

    创建文件输出流以写入由指定的 File对象表示的文件。

    写出去的数据,是清空写。将文件中原来的数据全部擦除,从头开始写数据。

    void write(int data),将参数,这个字节数据写出去

    void write(byte[] b),将 b.length个字节从指定的字节数组写入此文件输出流。

    void write(byte[] b, int off, int len) ,将 len字节从位于偏移量 off的指定字节数组写入此文件输出流。


    相关文章

      网友评论

        本文标题:javaIO流---节点流的重要方法

        本文链接:https://www.haomeiwen.com/subject/dyqrghtx.html