IO流之处理流

IO流之Buffered

bufferedwriter

处理流又叫包装流,对字节流,字符流包装,使他们的功能更强大;
用处理流处理字符输入流

package com.wang;

import org.junit.jupiter.api.Test;

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;

public class buffer {
    public static void main(String[] args) {

    }
    @Test
    public void bufferedread()
    {
        String path="d:/hello.txt";
        BufferedReader bufferedReader=null;
        String line;
        try {
               bufferedReader =new BufferedReader(new FileReader(path));
            while ((line=bufferedReader.readLine())!=null)
            {
                System.out.println(line);
                bufferedReader.lines();
            }
        } catch (IOException e) {
            throw new RuntimeException(e);
        }
    }
}

拷贝文件

一定要记住关闭文件,close()操作,不然前功尽弃;如果是追加操作,加true,new FileReader(path,true)

 @Test
    public void bufferedreadwrite() throws IOException {
        String path="d:/hello.txt";
        String path2="d:/hello2.txt";
        BufferedReader bufferedReader=null;
        BufferedWriter bufferedWriter=null;
        String line;
        try {
            bufferedReader =new BufferedReader(new FileReader(path));
            bufferedWriter=new BufferedWriter(new FileWriter(path2));
            while ((line=bufferedReader.readLine())!=null)
            {
                bufferedWriter.write(line);
                bufferedWriter.newLine();
            }
        } catch (IOException e) {
            throw new RuntimeException(e);
        }finally {
                try {
                    if(bufferedWriter!=null) {
                        bufferedWriter.close();
                    }
                    if(bufferedReader!=null)
                    {
                        bufferedReader.close();
                    }
                }
                catch (IOException e) {
                    throw new RuntimeException(e);
                }
            }

        }
    }

bufferinputsream拷贝文件

@Test
   public  void bufferio()
       {
           String path1="d:/对象1.jpg";
           String path2="d:/对象3.jpg";
           BufferedInputStream bufferedInputStream=null;
           BufferedOutputStream bufferedOutputStream=null;
           try {
               byte[] by=new byte[1024];
               bufferedInputStream=new BufferedInputStream(new FileInputStream(path1));
               bufferedOutputStream=new BufferedOutputStream(new FileOutputStream(path2));
               while((bufferedInputStream.read(by))!=-1)
               {
                   bufferedOutputStream.write(by);
               }
           } catch (IOException e) {
               throw new RuntimeException(e);
           }finally {
               try {
                   if(bufferedInputStream!=null)
                   {
                       bufferedInputStream.close();
                   }
                   if(bufferedOutputStream!=null)
                   {
                       bufferedOutputStream.close();
                   }
               } catch (IOException e) {
                   throw new RuntimeException(e);
               }
           }
       }
posted @   jinnice  阅读(36)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示