当前位置: 代码迷 >> 综合 >> BufferedWriter 和 BufferedReader通过流读取文件里的内容
  详细解决方案

BufferedWriter 和 BufferedReader通过流读取文件里的内容

热度:39   发布时间:2023-11-02 13:37:38.0

BufferedWriter 和 BufferedReader 为带有默认缓冲的字符输出输入流,因为有缓冲区所以很效率比没有缓冲区的很高。


从指定文件里读出文件里的内容最好用BufferedReader


public static void main(String[] args) throws IOException  {
//创建文件对象,指定要写出的文件路径
        FileReader  file=new FileReader("d:\\d.text");
        
       BufferedReader bre = new BufferedReader(file);//此时获取到的bre就是整个文件的缓存流
        String str;
while ((str = bre.readLine())!= null) // 判断最后一行不存在,为空结束循环
        {
        System.out.println(str);//原样输出读到的内容
        };
        bre.close();
}





构造方法:bufferedWriter bf = new bufferedWriter(Writer out );

主要方法:void write(char ch);//写入单个字符。

                  void write(char []cbuf,int off,int len)//写入字符数据的某一部分。

                  void write(String s,int off,int len)//写入字符串的某一部分。

                  void newLine()//写入一个行分隔符。

                  void flush();//刷新该流中的缓冲。将缓冲数据写到目的文件中去。

                  void close();//关闭此流,再关闭前会先刷新他。


public static void main(String[] args) throws IOException  {
//创建文件对象,指定要写出的文件路径
        FileWriter file=new FileWriter("d:\\d.text");
        BufferedWriter in = new BufferedWriter(file);  
      //使用缓冲区中的方法将数据写入到缓冲区中。  
        in.write("2017/07/06");
        in.newLine();    //换行
        in.write("星期五");
        //使用缓冲区中的方法,将数据刷新到目的地文件中去。 
        in.flush();
      //关闭缓冲区,同时关闭了in流对象  
        in.close();
 }