在Java中使用FileStreams复制文件

本示例说明了如何使用读取&复制一个文件的内容到另一个文件。FileStreams类的write方法。

示例

import java.io.*;

public class Main {
   public static void main(String[] args) throws Exception {
      BufferedWriter out1 = new BufferedWriter(new FileWriter("srcfile"));
      out1.write("string to be copied\n");
      out1.close();
      InputStream in = new FileInputStream(new File("srcfile"));
      OutputStream out = new FileOutputStream(new File("destnfile"));
      byte[] buf = new byte[1024];
      int len;

      while ((len = in.read(buf)) > 0) {
         out.write(buf, 0, len);
      }

      in.close();
      out.close();
      BufferedReader in1 = new BufferedReader(new FileReader("destnfile"));
      String str;

      while ((str = in1.readLine()) != null) {
         System.out.println(str);
      }
      in.close();
   }
}

结果

上面的代码示例将产生以下结果。

string to be copied

以下是在Java中将一个文件复制到另一个文件中的另一个简单示例

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
 
public class CopyExample {
   public static void main(String[] args) {
      FileInputStream ins = null;
      FileOutputStream outs = null;
      try {
         File infile =new File("C:\\Users\\nhooo7\\Desktop\\abc.txt");
         File outfile =new File("C:\\Users\\nhooo7\\Desktop\\bbc.txt");
         ins = new FileInputStream(infile);
         outs = new FileOutputStream(outfile);
         byte[] buffer = new byte[1024];
         int length;

         while ((length = ins.read(buffer)) > 0) {
            outs.write(buffer, 0, length);
         }          
         ins.close();
         outs.close();
         System.out.println("File copied successfully!!");
      } catch(IOException ioe) {
         ioe.printStackTrace();
      }    
   }
}

上面的代码示例将产生以下结果。

File copied successfully!!