利用字符流复制文本的5种方式

5种方式复制文本

  • 基本流一次读取一个字符
//创建输入流对象
FileReader fileReader = new FileReader("FileWriterDemo1.java");
//创建输出流对象
FileWriter fileWriter = new FileWriter("copyFileDemo.java");
//读写数据
int ch;
while ((ch = fileReader.read()) != -1){ 
    fileWriter.write(ch);
}
//释放资源
fileWriter.close();
fileReader.close();
  • 基本流一次读取一个字符数组
//创建输入流
FileReader fileReader = new FileReader("FileWriterDemo1.java");
//创建输出流对象
FileWriter fileWriter = new FileWriter("copyFileWriterDemo1.java");

char[] chars = new char[1024];//1024或者1024的整数
int len ;
while ((len = fileReader.read(chars)) != -1){ 
    fileWriter.write(chars,0,len);
}
fileWriter.close();
fileReader.close();
  • 缓冲流一次读取一个字符
//创建缓冲输入流
BufferedReader bufferedReader = new BufferedReader(new FileReader("FileReaderDemo.java"));
//创建缓冲输出流
BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter("copyFileReaderDemo.txt"));
//读写数据
int ch;
while ((ch = bufferedReader.read()) != -1){ 
    bufferedWriter.write((char) ch);
}
bufferedReader.close();
bufferedWriter.close();
  • 缓冲流一次读取一个字符数组
BufferedReader bufferedReader = new BufferedReader(new FileReader("FileReaderDemo.java"));
BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter("CopyFileReaderDemo.txt"));

char[] chars = new char[1024];
int ch;
while ((ch = bufferedReader.read(chars)) != -1){ 
    bufferedWriter.write(chars,0,ch);
    bufferedWriter.flush();
}
bufferedReader.close();
bufferedWriter.close();
  • 缓冲流一次读写一行字符串
BufferedReader bufferedReader = new BufferedReader(new FileReader("copyFileReaderDemo.txt"));
BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter("copyFileReaderDemo1.txt"));

String len;
while ((len = bufferedReader.readLine()) != null){ 
    bufferedWriter.write(len);//写入数据
    bufferedWriter.newLine();//自动识别换行
    bufferedWriter.flush();//刷新
}
//资源释放
bufferedReader.close();
bufferedWriter.close();

晨曦博客,欢迎大家来访交流

    原文作者:酒涩博客
    原文地址: https://blog.csdn.net/qq_45833940/article/details/109612264
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞