Java에서 파일을 복사하는 방법은 무엇입니까? 예시
14989 단어 programmingbeginnerscodingjava
JDK는 이제 발전했으며 한 디렉토리에서 다른 디렉토리로 파일을 복사할 수 있는 적절한 API가 있습니다. 이 기사에서는 한 디렉토리에서 다른 디렉토리로 파일을 복사하기 위한 Java 이전 코드와 이 작업을 훨씬 쉽게 만드는 Java 7 코드를 모두 보여줍니다.
1. Java 7 이전의 디렉토리에서 다른 디렉토리로 파일 복사
종속성: Apache Commons IO
1. FileUtils.copyFile(파일 소스, 파일 대상)
이 방법은 파일 타임스탬프를 보존하는 새 위치에 파일을 복사합니다.
이 메서드는 지정된 소스 파일의 내용을 지정된 대상 파일에 복사합니다. 대상이 있는 디렉토리file is created if it does not exis t. 대상 파일이 존재하는 경우 이 메서드는 파일을 덮어씁니다.
import java.io.File;
import java.io.IOException;
import org.apache.commons.io.FileUtils;
/*** Java program to copy a file from one directory to another e.g. from src to dest
** @author Javin*/
public class FileCopyDemo {
public static void main(String args[]) {
// Using Apache Commons FileUtils class
File srcFile = new File("bin/HelloWorld.class");
File destFile = new File("target/HelloWorld.class");
try {
FileUtils.copyFile(srcFile, destFile);
System.out.println("File successfully copied in Java");
} catch (IOException e) {
e.printStackTrace();
}
}
}
Output: System.out.println("File successfully copied in Java");
1.2 타임스탬프를 보존하는 디렉토리에 파일 복사
이 메소드는 지정된 소스 파일의 내용을 지정된 대상 디렉토리에 있는 동일한 이름의 파일에 복사합니다. 목적지directory is created if it does not exis t. 대상 파일이 존재하는 경우 이 메서드는 파일을 덮어씁니다.
import java.io.File;
import java.io.IOException;
import org.apache.commons.io.FileUtils;
/*** Java program to copy a file from one directory to another like from src to dest
** @author Javin Paul*/
public class Testing {
public static void main(String args[]) {
// Using Apache Commons FileUtils class
File srcFile = new File("bin/HelloWorld.class");
File destDir = new File("target");
try {
FileUtils.copyFileToDirectory(srcFile, destDir);
System.out.println("File successfully copied to destination directory in Java");
} catch (IOException e) {
e.printStackTrace();
}
}
}
Output: File successfully copied to destination directory in Java
2. Java 7 NIO 2 API를 사용하여 한 디렉토리에서 다른 디렉토리로 파일 복사
Java 7에는 java에서 파일을 복사하는 표준 방법이 있습니다.
파일.복사.
고성능을 위해 O/S 기본 I/O와 통합됩니다.
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import static java.nio.file.StandardCopyOption.*;
import static java.nio.file.LinkOption.*; /*** Java program to copy file using Java 7 Files.copy() method** @author Javin Paul*/
public class FileCopyDemo {
public static void main(String args[]) {
try {
Path bytes = Files.copy(new Java.io.File("bin/HelloWorld.class").toPath(), new java.io.File("target/HelloWorld.class").toPath(), REPLACE_EXISTING, COPY_ATTRIBUTES, NOFOLLOW_LINKS);
System.out.println("File successfully copied using Java 7 way");
} catch (IOException e) {
// TODO Auto-generated catch blocke.printStackTrace();
}
}
}
FileInputStream 및 FileOuputStream 을 사용하여 코드를 작성하여 Java에서 파일을 복사할 수도 있지만 Java 7이 설치되어 있는 경우 필수 사항은 아닙니다.
또는 Apache commons IO FileUtils 클래스도 편리합니다. 고속 파일 복사 및 전송을 위해 java.nio 및 FileChannel 클래스를 활용할 수도 있지만 Windows에 버그가 있어 64GB 이상의 채널 데이터를 전송할 수 없다는 점에 유의하십시오. transferFrom 관련 Windows 버그가 64MB보다 큰 스트림을 한 조각으로 복사할 수 없습니까?
좋아할만한 다른 Java 프로그래밍 기사:
다른 Java 및 프로그래밍 기사를 읽고 싶을 수도 있습니다.
지금까지 이 글을 읽어주셔서 감사합니다. 이 Java 자습서가 마음에 들면 친구 및 동료와 공유하십시오. 질문이나 의견이 있으시면 메모를 남겨주세요.
P. S. - Java 세계를 처음 접하고 처음부터 Java를 배울 수 있는 무료 과정을 찾고 있다면 Medium에서 my favorite free Java courses을 살펴볼 수도 있습니다. 온라인에서 Java를 배울 수 있는 최고의 무료 Java 교육 과정이 있습니다.
Reference
이 문제에 관하여(Java에서 파일을 복사하는 방법은 무엇입니까? 예시), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/javinpaul/how-to-copy-files-in-java-example-3clf텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)