반응형
SMALL
Java에서 파일 생성을 하는 방법
1. FileWriter를 이용한 파일 생성
import java.io.*;
public class test {
public static void main(String[] args) {
String txt = "테스트입니다!!" ;
String fileName = "/Users/hyunchang/Downloads/logTestFile.log" ;
try{
// 파일 객체 생성
File file = new File(fileName) ;
// true 지정시 파일의 기존 내용에 이어서 작성
FileWriter fw = new FileWriter(file, true) ;
// 파일안에 문자열 쓰기
fw.write(txt);
fw.flush();
// 객체 닫기
fw.close();
}catch(Exception e){
e.printStackTrace();
}
}
}
2. BufferedWriter + FileWriter를 이용한 생성
import java.io.*;
public class test {
public static void main(String[] args) {
String txt = "test" ;
makeFile(txt);
}
private static void makeFile(String txt) {
String fileName = "/Users/hyunchang/Downloads/logTestFile2.log" ;
try{
// BufferedWriter 와 FileWriter를 조합하여 사용 (속도 향상)
BufferedWriter fw = new BufferedWriter(new FileWriter(fileName, true));
// 파일안에 문자열 쓰기
fw.write(txt);
fw.flush();
// 객체 닫기
fw.close();
}catch(Exception e){
e.printStackTrace();
}
}
}
위의 1, 2번 코드는 모두 동일한 형태의 파일을 생성하지만 성능에는 큰 차이가 발생합니다.
기록하고자 하는 파일의 크기가 100K를 넘는다면 FileWriter를 단독으로 쓰기보다는 BufferedWriter + FileWriter 를
혼합하여 사용하는게 파일 기록할때 속도가 더 빠릅니다.
두번째는 txt 스트링 파일을 조작해보려고 파일로 만드는 것만 따로 빼봤습니다.
참조 : https://fruitdev.tistory.com/54
반응형
'Programing > JAVA' 카테고리의 다른 글
[java] Map을 로그에 출력하는 방법 (11) | 2022.02.11 |
---|---|
[ Java ] 로컬 ip 및 포트 확인방법 (0) | 2021.11.04 |
[ Java ] 소켓통신 예제 (1) | 2021.10.14 |
[ JAVA ] 서버 IP 가져오는 방법 (0) | 2021.03.05 |
[JAVA] quartz 를 이용한 스케쥴러 구현 (0) | 2018.06.18 |