字节流读写文本文件

时间:2022-10-12 20:59:49

字节输入流读取文本文件

  1. InputStream基类

        作用:将文件中的数据输入到内部储存器(内存)中.

 

                  读取数据的常用方法

方法名称

说明

int read()

读取一个字节数据

int read(byte[] b)

将数据读取到字节数组中

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

从输入流中读取最多len长度的字节,保存到字节数组b中,保存的位置从off开始

void close()

关闭输入流

int available()

返回输入流读取的估计字节数

※   无参的read()方法从输入流读取1个8位的字节,把它转换为0~255之间的整数。

※   有参的两个read()方法从输入流批量读取若干个字节。在从文件或键盘读取数据时,采用read(byte[] b)或 read(byte[] b,int off, int len)方法可以减少进行物理读文件或键盘的次数,提高输入或输出操作效率。

 

  1. 字节输入流FileInputStream

    常用构造方法:

          ※  FileInputStream(File file【文件数据源】)

                     File file=new File (“C:\\test.txt”);

                            FileInputStream fileObject=new FileInputStream (file);

          ※  FileInputStream (String name)

                    InputStream fileObject=new FileInputStream (“C:\\test.txt”);

 

    使用FileInputStream读取文件步骤:

        (1) 引入相关类(IOException, InputStream,  FileInputStream)

               Import java.io.*;

        (2) 创建一个文件输入流

                        InputStream fileObject=new FileInputStream (“C:\\test.txt”);

        (3) 利用文件输入流的方法读取文本文件的数据

              fileObject .available ();          //可读取的字节数

                  fileObject .read ();                 //读取文件的数据

        (4) 关闭文件输入流对象

              fileObject .close ();

★ 注意:

     ※  read()方法返回整数,若读取的是字符串,则需强制转换。

              System .out .println ((char)date+” ”);

      ※  流对象使用完毕后需要关闭

 

字节输出流写文本文件

  1. OutputStream基类

          作用:把内存中的数据输出到文件中。

                OutputStream的常用方法

方法名称

说明

void write(int c)

写入一个字节数据

void write (byte[] b)

写入数组b的所有字节

void write (byte[]b , int off , int len)

将字节数组从off位置开始,长度为len的字节数据输出到输出流中

void close()

关闭输出流

 

 2.字节输出流OutputStream

  常用构造方法:

      ※  FileOutputStream(File file【文件数据源】)

              File file=new File (“C:\\test.txt”);

                      FileOutputStream fileObject= new FileOutputStream (file);

      ※  FileOutputStream (String name)

              OutputStream fileObject=new FileOutputStream (“C:\\test.txt”);

      ※  FileOutputStream (String name, boolean append)

              OutputStream fileObject=new FileOutputStream (“C:\\test. txt”, true);

★注意:

       1. 第一、二种构造方法在向文件写数据时将覆盖文件中原有的内容。

       2. 使用构造方法创建实例时,若相应文件不存在,就会自动创建一个空文件。

       3. 若文件存在,但代表一个文件目录,则抛出FileNotFoundException异常。

 

   使用FileOutputStream读取文件步骤:

      (1) 引入相关类(IOException, OutputStream,  FileOutputStream)

               Import java.io.*;

      (2) 创建一个文件输出流对象

                      FileOutputStream fos = new FileOutputStream (“C:\\test.txt”);

      (3) 利用文件输出流的方法把数据写入文本文件

            String word=“ 好好学习 ”;                 

                byte [] words = word .getBytes();                  

                //利用write方法将数据写入文件

                fos. write (words, 0 ,words .length);

      (4) 关闭文件输出流

             fos .close ();