가자미의 개발이야기
[자바] 파일 시스템 본문
간단한 입출력의 예(IO스트림으로도 가능하지만, 코드 량이 많은 단점이 있음)
public static void main(String[] args) throws IOException{
Path fp = Paths.get("C:\\JavaStudy\\simple.bin");
//파일 생성, 파일이 존재하면 예외
fp = Files.createFile(fp);
byte buf1[] = {0x13, 0x14, 0x15}; //파일에 쓸 데이터
for(byte b : buf1) //저장할 데이터의 출력을 위한 반복문
System.out.print(b+"\t");
System.out.println();
//파일에 데이터 쓰기
Files.write(fp, buf1, StandardOpenOption.APPEND);
//append 추가 create 생성 create_new 새 파일 생성 truncate_erasing 파일이 존재하면 덮어쓰기
//파일로부터 데이터 읽기
byte buf2[] = Files.readAllBytes(fp);
for(byte b : buf2) //읽어 들인 데이터의 출력을 위한 반복문
System.out.print(b+"\t");
System.out.println();
}
문자 데이터의 간단한 입출력
class SimpleTxtWriteRead{
public static void main(String[] args) throws IOException{
Path fp = Paths.get("C:\\JavaStudy\\simple.txt");
String st1 = "One simple Stirng";
Stirng st2 = "Two simple String";
List<String> lst1 = Arrays.asList(st1, st2);
Files.write(fp, lst1); //파일에 문자열 저장하기
List<String> lst2 = Files.readAllLines(fp); //파일로부터 문자열 읽기
System.out.println();
}
}
파일 및 디렉토리의 복사와 이동
class CopyFileFromFiles{
public static void main(String[] args) throws IOException {
Path src = Paths.get("C:\\JavaStudy\\CopyFileFromFiles.java");
Path dst = Paths.get("C:\\JavaStudy\\CopyFileFromFiles2.java");
//src가 지시하는 파일을 dst가 지시하는 위치와 이름으로 복사
Files.copy(src, dst,StandardCopyOption.REPLACE_EXISTING);
}
}
class MoveFileFromFiles{
public static void main(String[] args) throws IOException {
Path src = Paths.get("C:\\JavaStudy\\Dir1");
Path dst = Paths.get("C:\\JavaStudy\\Dir2");
//src가 지시하는 파일을 dst가 지시하는 위치와 이름으로 복사
Files.move(src, dst,StandardCopyOption.REPLACE_EXISTING);
}
}
'Java > 자바 기본 문법' 카테고리의 다른 글
[자바] NIO 기반 입출력 (0) | 2021.03.01 |
---|---|
[자바] NIO 기반 바이트 스트림 & 문자 스트림 생성 (0) | 2021.03.01 |
[자바] 경로 표현을 위한 Path 인터페이스 (0) | 2021.03.01 |
[자바] 상대경로와 절대경로 (0) | 2021.02.28 |
[자바] 텍스트 읽어서 특정 기호 기준으로 나누기 (0) | 2021.02.28 |