반응형
1. 텍스트 파일 복사
public class FileIO {
public static void main(String[] args) {
try {
// 파일 객체 생성
File original = new File("D:\\original.txt");
File copy = new File("D:\\copy.txt");
// 스트림 생성
FileReader fileReader = new FileReader(original);
FileWriter fileWriter = new FileWriter(copy);
// 파일 복사
int singleCh = 0;
// 파일의 끝에 도달 할 때까지 character 하나씩 읽어들임
while((singleCh = fileReader.read()) != -1) {
fileWriter.write(singleCh);
}
// 스트림 닫기
fileWriter.close();
fileReader.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
2. 바이너리 파일 복사 (버퍼 사용)
public class FileIO2 {
public static void main(String[] args) {
try {
// 파일 객체 생성
File original = new File("D:\\original.jpg");
File copy = new File("D:\\copy.jpg");
// 스트림 생성
FileInputStream fileInputStream = new FileInputStream(original);
FileOutputStream fileOutputStream = new FileOutputStream(copy);
// 버퍼 생성
byte[] buf = new byte[5000];
// 파일 복사
int readData = 0;
// 파일의 끝에 도달할 때까지 버퍼의 크기만큼 읽어들임 (버퍼의 0번째 인덱스부터 버퍼 크기만큼)
while((readData = fileInputStream.read(buf, 0, buf.length)) != -1) {
fileOutputStream.write(buf, 0, readData); // 쓰기
}
// 스트림 닫기
fileInputStream.close();
fileOutputStream.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
반응형
'개발_웹 > Java' 카테고리의 다른 글
Java | 파일 다운로드 (0) | 2019.05.11 |
---|---|
Java | 파일 업로드 (cos.jar) (0) | 2019.05.11 |
Java | 에러 페이지 만들기 (0) | 2019.05.11 |
Java | 웹 어플리케이션 경로 구하기 (ContextPath) (0) | 2019.05.11 |
Java | form 태그로 여러 타입의 input 값 전달하기 (0) | 2019.05.11 |