본문 바로가기

닷컴's_열공/JAVA

간단한 파일 handling

Java로 프로그래밍을 하다 보면 파일 핸들링이 꼭 필요한 경우가 있다. 자주 사용했던 걸 요약하면 다음과 같다.

1. UTF-8로 되어있는 파일 읽고 쓰기

BufferedReader br = new BufferedReader(new InputStreamReader( new FileInputStream(args[0]), "UTF-8"));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter( new FileOutputStream(args[1]), "UTF-8"));
 
,

args[0]과 args[1]은 각각 입력, 출력 파일 이름이다.
인코딩은 보통 utf-8, ksc5601, euc-kr, ms949, iso-8859-1, 8859-1 중에 하나로 합니다.
파일을 쓸 때 새로운 파일로 생성하게 되는데 이게 아니라 뒤에 파일을 추가해서 쓰게 하는 모드로 바꾸려면
new FileOutputStream( args[1] );
new FileOutputStream( args[1] , true); 로 바꾸어 주면 됩니다.

br.readLine( str )bw.write( str )을 쓰면
C언어에서 fprintf(in,"%s",str) ;  fprintf(out,"%s",str)
C++언어에서 fin>>str; fout<<str 을 하는 효과가 된다.

2. 파일 이동/변경, 삭제

- 파일 이동/변경
File file = new File( from );
File destFile = new File( to );
if (!file1.renameTo(file2)) {
      System.err.println("Failed to move this file.");
}


- 파일 삭제
File f = new File( fileName );
if (!f.delete())
{
      System.err.println("Failed to remove this file.");
}


3. 폴더 만들기, 폴더 삭제
- 폴더 만들기
File f = new File( fileName );

if (!f.mkdirs())
{
      System.err.println("Failed to make this directory.");
}


- 폴더 이동/변경(파일 이동/변경하는 것과 같다)
- 폴더 삭제(파일 삭제하는 것과 같다)

--
try-catch는 물론 해 줘야 합니다.