黑马程序员技术交流社区

标题: IO流的两个案例! [打印本页]

作者: 史柯    时间: 2015-8-22 14:51
标题: IO流的两个案例!
第一个案例!
负责文本文件的5种方式(字符流)
  1. package cn.itcast_01;

  2. import java.io.BufferedReader;
  3. import java.io.BufferedWriter;
  4. import java.io.File;
  5. import java.io.FileReader;
  6. import java.io.FileWriter;
  7. import java.io.IOException;

  8. public class CopyFileDemo {
  9.         public static void main(String[] args) throws IOException {
  10.                 File srcFile = new File("D:\\copy01\\a.txt");
  11.                 File destFile = new File("D:\\copy02\\a.txt");
  12.                 // mothed1(srcFile, destFile);
  13.                 //mothed2(srcFile, destFile);
  14.                 //mothed3(srcFile, destFile);
  15.                 //mothed4(srcFile, destFile);
  16.                 mothed5(srcFile, destFile);
  17.         }

  18.         public static void mothed1(File srcFile, File destFile) throws IOException {
  19.                 FileWriter fw = new FileWriter(destFile);
  20.                 FileReader fr = new FileReader(srcFile);
  21.                 for (int by = 0; (by = fr.read()) != -1;) {
  22.                         fw.write(by);
  23.                 }
  24.                 fr.close();
  25.                 fw.close();
  26.         }

  27.         public static void mothed2(File srcFile, File destFile) throws IOException {
  28.                 BufferedWriter bw = new BufferedWriter(new FileWriter(destFile));
  29.                 BufferedReader br = new BufferedReader(new FileReader(srcFile));
  30.                 for (int by = 0; (by = br.read()) != -1;) {
  31.                         bw.write(by);
  32.                 }
  33.                 br.close();
  34.                 bw.close();
  35.         }

  36.         public static void mothed3(File srcFile, File destFile) throws IOException {
  37.                 FileWriter fw = new FileWriter(destFile);
  38.                 FileReader fr = new FileReader(srcFile);
  39.                 char[] chs = new char[1024];
  40.                 int len = 0;
  41.                 while ((len = fr.read(chs)) != -1) {
  42.                         fw.write(chs, 0, len);
  43.                 }
  44.                 fr.close();
  45.                 fw.close();
  46.         }
  47.        
  48.         public static void mothed4(File srcFile, File destFile) throws IOException {
  49.                 BufferedWriter bw = new BufferedWriter(new FileWriter(destFile));
  50.                 BufferedReader br = new BufferedReader(new FileReader(srcFile));
  51.                 char[] chs = new char[1024];
  52.                 int len = 0;
  53.                 while ((len = br.read(chs)) != -1) {
  54.                         bw.write(chs, 0, len);
  55.                 }
  56.                 br.close();
  57.                 bw.close();
  58.         }
  59.        
  60.         public static void mothed5(File srcFile, File destFile) throws IOException {
  61.                 BufferedWriter bw = new BufferedWriter(new FileWriter(destFile));
  62.                 BufferedReader br = new BufferedReader(new FileReader(srcFile));
  63.                 String line=null;
  64.                 while ((line = br.readLine()) != null) {
  65.                         bw.write(line);
  66.                         bw.newLine();
  67.                         bw.flush();
  68.                 }
  69.                 br.close();
  70.                 bw.close();
  71.         }
  72. }
复制代码
第二个案例!
复制图片的4种方法!(字节流)
  1. package cn.itcast_02;

  2. import java.io.BufferedInputStream;
  3. import java.io.BufferedOutputStream;
  4. import java.io.File;
  5. import java.io.FileInputStream;
  6. import java.io.FileOutputStream;
  7. import java.io.IOException;

  8. public class CopyJpgDemo {
  9.         public static void main(String[] args) throws IOException {
  10.                 File srcFile = new File("D:\\copy01\\a.jpg");
  11.                 File destFile = new File("D:\\copy02\\a.jpg");
  12.                 // mothed1(srcFile, destFile);
  13.                 //mothed2(srcFile, destFile);
  14.                 //mothed3(srcFile, destFile);
  15.                 mothed4(srcFile, destFile);
  16.         }

  17.         public static void mothed1(File srcFile, File destFile) throws IOException {
  18.                 FileOutputStream fos = new FileOutputStream(destFile);
  19.                 FileInputStream fis = new FileInputStream(srcFile);
  20.                 for (int by = 0; (by = fis.read()) != -1;) {
  21.                         fos.write(by);
  22.                 }
  23.                 fos.close();
  24.                 fis.close();
  25.         }

  26.         public static void mothed2(File srcFile, File destFile) throws IOException {
  27.                 FileOutputStream fos = new FileOutputStream(destFile);
  28.                 FileInputStream fis = new FileInputStream(srcFile);
  29.                 byte[] bys = new byte[1024];
  30.                 int len = 0;
  31.                 while ((len = fis.read(bys)) != -1) {
  32.                         fos.write(bys, 0, len);
  33.                 }
  34.                 fos.close();
  35.                 fis.close();
  36.         }

  37.         public static void mothed3(File srcFile, File destFile) throws IOException {
  38.                 BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(destFile));
  39.                 BufferedInputStream bis = new BufferedInputStream(new FileInputStream(srcFile));
  40.                 for (int by = 0; (by = bis.read()) != -1;) {
  41.                         bos.write(by);
  42.                 }
  43.                 bos.close();
  44.                 bis.close();
  45.         }

  46.         public static void mothed4(File srcFile, File destFile) throws IOException {
  47.                 BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(destFile));
  48.                 BufferedInputStream bis = new BufferedInputStream(new FileInputStream(srcFile));
  49.                 byte[] bys = new byte[1024];
  50.                 int len = 0;
  51.                 while ((len = bis.read(bys)) != -1) {
  52.                         bos.write(bys, 0, len);
  53.                 }
  54.                 bos.close();
  55.                 bis.close();
  56.         }
  57. }
复制代码








欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2