java フォルダやファイルをコピーする

javaで、フォルダやファイルをコピーする手順を記述してます。「Files.copy」にコピー元とコピー先を指定します。
環境
- OS windows11 home
- java 19.0.1
手順
フォルダやファイルをコピーするには、「Files.copy」を使用します。
Files.copy(コピー元,コピー先)
実際に、使用して「App.java」というファイルをコピーして「Copy.java」を作成してみます。

以下のコードを実行します。
import java.nio.file.Path;
import java.nio.file.Paths;
import java.nio.file.Files;
import java.io.IOException;
public class App {
public static void main(String[] args) throws Exception {
Path path1 = Paths.get("C:/java/test/src/App.java");
Path path2 = Paths.get("C:/java/test/src/Copy.java");
try{
Files.copy(path1, path2);
}catch(IOException e){
System.out.println(e);
}
}
}
コピーされていることが確認できます。

コピー先にファイルが存在した場合
コピー先にファイルが存在した場合は、「FileAlreadyExistsException」が発生します。

ファイルが存在した場合に、上書きしたい時は「REPLACE_EXISTING」を使用します。
import java.nio.file.Path;
import java.nio.file.Paths;
import java.nio.file.Files;
import java.io.IOException;
import static java.nio.file.StandardCopyOption.REPLACE_EXISTING;
public class App {
public static void main(String[] args) throws Exception {
Path path1 = Paths.get("C:/java/test/src/App.java");
Path path2 = Paths.get("C:/java/test/src/Copy.java");
try{
Files.copy(path1, path2, REPLACE_EXISTING);
}catch(IOException e){
System.out.println(e);
}
}
}
フォルダをコピー
フォルダもコピーすることは可能です、フォルダ内のデータまではコピーすることができません。
import java.nio.file.Path;
import java.nio.file.Paths;
import java.nio.file.Files;
import java.io.IOException;
import static java.nio.file.StandardCopyOption.REPLACE_EXISTING;
public class App {
public static void main(String[] args) throws Exception {
Path path1 = Paths.get("C:/java/test/src/");
Path path2 = Paths.get("C:/java/test/src/copySrc");
try{
Files.copy(path1, path2, REPLACE_EXISTING);
}catch(IOException e){
System.out.println(e);
}
}
}
フォルダ内のデータはコピーされてないことが確認できます。

-
前の記事
google スプレッドシート 枠線を削除するショートカットキー 2023.05.02
-
次の記事
Rust 文字列の先頭から指定した文字を取り除く 2023.05.03
コメントを書く