IO流_字符流复制文本文件案例2

桃扇骨 2022-07-12 05:00 253阅读 0赞
  1. package cn.itcast_04;
  2. import java.io.FileReader;
  3. import java.io.FileWriter;
  4. import java.io.IOException;
  5. /*
  6. * 由于我们常见的操作都是使用本地默认编码,所以不用指定编码。
  7. * 而转换流的名称有点长,所以,Java就给我们提供其子类供我们使用。
  8. * OutputStreamWriter = FileOutputStream + 编码表(GBK)
  9. * FileWriter = OutputStreamWriter
  10. *
  11. * InputStreamReader = FileInputStream + 编码表(GBK)
  12. * FileReader = InputStreamReader
  13. *
  14. * 需求:把当前项目目录下的a.txt内容复制到当前项目目录中b.txt中
  15. *
  16. * 数据源:
  17. * a.txt -- 读取数据 -- 字符转换流 -- InputStreamReader -- FileReader
  18. * 目的地:
  19. * b.txt -- 读出数据 -- 字符转换流 -- OutputStreamWriter -- FileWriter
  20. */
  21. public class CopyFileDemo2 {
  22. public static void main(String[] args) throws IOException {
  23. // 封装数据源对象
  24. FileReader fr = new FileReader("a.txt");
  25. // 封装目的地对象
  26. FileWriter fw = new FileWriter("b.txt");
  27. // 读写数据
  28. // 方式1
  29. // 一次读写一个字符
  30. // int len = 0;
  31. // while ((len = fr.read()) != -1) {
  32. // fw.write(len);
  33. // }
  34. // 方式2
  35. // 一次读写一个字符数组
  36. char[] chs = new char[1024];
  37. int len = 0;
  38. while ((len = fr.read(chs)) != -1) {
  39. fw.write(chs, 0, len);
  40. fw.flush();
  41. }
  42. // 释放资源
  43. fw.close();
  44. fr.close();
  45. }
  46. }

发表评论

表情:
评论列表 (有 0 条评论,253人围观)

还没有评论,来说两句吧...

相关阅读