字节缓冲流复制

  1. /**
  2. * 缓冲流读写文件进行复制功能
  3. *
  4. * @param from 从这个路径复制
  5. * @param to 复制到这个路径
  6. */
  7. public static void copyFile(String from, String to) {
  8. System.out.println("=== 复制文件 Start ===");
  9. File file = new File(from);
  10. System.out.println(file.getName());
  11. try (// 把原始的字节输入流包装成高级的缓冲字节输入流
  12. InputStream bis = new BufferedInputStream(new FileInputStream(from));
  13. // 把原始的字节输出流包装成高级的缓冲字节输出流
  14. OutputStream bos = new BufferedOutputStream(new FileOutputStream(to));
  15. ) { // 定义一个字节数组转移数据
  16. byte[] buffer = new byte[1024];
  17. int len;//记录每次读取的字节数
  18. while ((len = bis.read(buffer)) != -1) {
  19. bos.write(buffer, 0, len); //读多少,输出多少
  20. }
  21. System.out.println("复制文件成功完成");
  22. } catch (FileNotFoundException e) {
  23. e.printStackTrace();
  24. } catch (IOException e) {
  25. e.printStackTrace();
  26. }
  27. System.out.println("=== 复制文件 End ===");
  28. }

字符缓冲流

  1. Reader fr = new FileReader("src/logback.xml");
  2. BufferedReader br = new BufferedReader(fr);
  3. BufferedWriter bw=new BufferedWriter(new FileWriter("src/d1.txt"));
  4. String line; //按行读取字符
  5. while ((line = br.readLine()) != null) {
  6. System.out.println(line);
  7. bw.write(line);
  8. bw.newLine();//换行功能
  9. }
  10. br.close();
  11. bw.close();