IO流学习-03

来源:互联网 发布:台湾观光局数据 编辑:程序博客网 时间:2024/06/05 20:20

输出字节流:

      OutputStream  是所有输出字节流的父类   是个抽象类

         |—–FileOutputStream  向文件输出数据的输出字节流

               |—–BufferedOutputStream 缓冲输出字节流(不推荐使用 其内部只不过维护了一个8kb的字节数组而已,没有写出的能力需传入FileOutputStream对象)

   使用FileOutputStream输出数据的步骤:

       1.找到目标文件

         File file=new File(“f:\\a.txt”);

       2.建立数据的输出通道

     FileOutputStream fileOutputStream=new FileOutputStream(file);

       3.准备数据,并写出数据

          使用字符缓冲数组

          Stirng data=”hello word”;

          fileOutputStream.write(data.getBytes());

           write方法接受一个字节数组

       4.关闭资源

          fileOutputStream.close();

注:在使用FileOutputStream的时候,如果目标文件不存在,那么会自动创建目标文件。若目标存在,那么会先清空目标文件的数据,然后再写入数据。

       若想写入数据时直接追加到文件后面,而不是清空后在追加可采用另一种构造方法。

 FileOutputStream fileOutputStream=new FileOutputStream(file,true);

     file参数还代表目标文件,第二个参数代表是否追加到目标文件 true表示追加到原文件末尾处 false表示不追加直接清空。

     注:若想追加时写入的数据另起一行,则需在数据前加入”\n\t”即可(否则直接加在文件的末尾处)

     注:FileOutputStream的write(byte[] b,int off,int len)方法含义是:

          从字节数组b的off索引值开始写,写出len个长度。

     注:关闭资源时应该遵守先开后关、后开先关的原则。

     注:在使用BufferedOutputStream写出数据的时候,它的write方法只是把数据写到了它内部维护的字节数组中,如果需要把数据真正写到硬盘上面,需要调用flush方法来刷新到硬盘上,但当其内部维护的字节数组容量满时会自动把数据刷入到硬盘上。

上一节输入字符流
下一节输入字节流

每天学习一点点 未来爱你多一点

原创粉丝点击