您的位置:首页 > 博客中心 > 互联网 >

IO字符流

时间:2022-05-10 10:00

1、IO字符流

(1)字符输入流Reader:字符输入流类的超类,共性的成员方法:

    1》int read();读取单个字符并返回;

    2》int read(char[] c);一次读取多个字符,将字符读入数组;

    3》void close();关闭该流,并释放与之关联的所有资源;

(2)文件字符输入流FileReader:继承Reader类,作用:把硬盘文件中的数据以字符的方式读取到内存中;

  构造方法:1》FileReader(String fileName);

       2》FileReader(File file);

  构造方法的作用:1>创建一个FileReader对象;

          2>把FileReader对象指向要读取的文件;

(3)读取时将字符数组转成字符串:

  使用String类的构造方法:1》new String(char[] c);将字符数组转换为字符串;

             2》new String(char[] c, int offset, int count);把字符数组的一部分转换为字符串,offset为数组的开始索引;count为转换的字符个数;

(4)字符输出流Writer:字符输出流的超类,抽象类,定义的共性成员方法:

    1》void write(int c);写入单个字符;

    2》void write(char[] c);写入字符数组;

    3》abstract void write(char[] c, int off, int len);写入字符数组的一部分,off为数组的开始索引,len为字符的个数;

    4》void write(String str);写入字符串;

    5》void write(String str, int off, int len);写入字符串的一部分;

    6》void flush();刷新该流的缓冲;

    7》void close();关闭该流,但要先刷新它;

(5)FileWriter文件字符输出流:把内存中的字符写入到文件中;

  构造方法:1》FileWriter(File file);

       2》FileWriter(String fileName);

  构造方法的作用:1>创建一个FileWriter对象;

          2>根据构造方法中传递的文件路径,创建文件;

          3>把FileWriter对象指向创建好的文件;

(6)字符输出流的使用步骤:

    1》创建FileWriter对象,构造方法中绑定要写入数据的目的地;

    2》使用FileWriter中的write方法,把数据写入到内存缓冲区中,(字符转换成字节的过程);

    3》使用FileWriter中的flush方法,把内存缓冲区中的数据,刷新到文件中;

    4》释放资源,会先把内存缓冲区中的数据刷新到文件中;

(7)Flush方法和close方法的区别:flush:刷新缓冲区,流对象可以继续使用;

                close:先刷新缓冲区,然后通知系统释放资源,流对象不可以再被使用了;

(8)字符输出流的续写和换行,与字节输出流的方法一样,续写:使用两个参数的构造方法:

    1》FileWriter(File file, boolean append);

    2》FileWriter(String fileName, boolean append);boolean append:续写的开关,为true时,续写,为false时,创建新的文件覆盖原文件;

  换行:windows:\r\n;linux:/n;mac:/r;

(9)JDK7在处理流对象异常的新用法:在try的后面可以增加一个(),在括号中定义流对象,那么这个流对象的作用域就在try中,try中的代码执行完毕,会自动把流对象释放,不用写finally;JDK9的新特性,在try的前面定义流对象,在try后面的括号中可以引入流对象的名称(变量名,如果有多个对象,对象之间用分号隔开),在try代码执行完毕之后,流对象也可以释放掉,不用写finally;

本类排行

今日推荐

热门手游