Javaでファイルをコピーする方法

Javaでファイルをコピーする方法

Javaにはファイルコピー機能が用意されていなかったため、ファイルコピープロセスを手動で作成する必要があります。 ファイルをコピーするには、ファイルをFileInputStreamを使用してバイトストリームに変換し、FileOutputStreamを使用してバイトを別のファイルに書き込みます。

全体的なプロセスは非常に単純です。Javaがこのメソッドをjava.io.Fileクラスに含めない理由を理解していないだけです。

ファイルコピーの例

「Afile.txt」という名前のファイルを「Bfile.txt」という名前の別のファイルにコピーする例を次に示します。 「Bfile.txt」が存在する場合、既存のコンテンツは置き換えられます。それ以外の場合は、「Afile.txt」のコンテンツで作成されます。

package com.example.file;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

public class CopyFileExample
{
    public static void main(String[] args)
    {

        InputStream inStream = null;
    OutputStream outStream = null;

        try{

            File afile =new File("Afile.txt");
            File bfile =new File("Bfile.txt");

            inStream = new FileInputStream(afile);
            outStream = new FileOutputStream(bfile);

            byte[] buffer = new byte[1024];

            int length;
            //copy the file content in bytes
            while ((length = inStream.read(buffer)) > 0){

                outStream.write(buffer, 0, length);

            }

            inStream.close();
            outStream.close();

            System.out.println("File is copied successful!");

        }catch(IOException e){
            e.printStackTrace();
        }
    }
}