Javaexamples-file-copy

提供:Dev Guides
移動先:案内検索

Javaの例-ファイルのコピー

問題の説明

あるファイルを別のファイルにコピーする方法は?

溶液

この例では、BufferedWriterクラスの読み取りおよび書き込みメソッドを使用して、あるファイルの内容を別のファイルにコピーする方法を示します。

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で1つのファイルを別のファイルにコピーする別のサンプル例です。

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\\finddevguides7\\Desktop\\abc.txt");
         File outfile = new File("C:\\Users\\finddevguides7\\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!!