티스토리 뷰
반응형
실전에서도 유용하게 쓰는 자바의 파일 사용법 모음집입니다!
파일 쓰기
// file: 저장할 경로
// content: 저장할 컨텐츠
public boolean write(File file, String content) {
try {
if (!file.exists()) {
file.createNewFile();
}
FileOutputStream fos = new FileOutputStream(file);
fos.write(content.getBytes(StandardCharsets.UTF_8));
fos.flush();
fos.close();
} catch (Exception e) {
log.error(ExceptionUtils.getStackTrace(e));
return false;
} finally {
return true;
}
}
파일 읽기
// path: 파일 경로
public String read(Path path) {
try {
// Path path = file.toPath(); // file.toPath로 쉽게 변환 가능합니다
return Files.readString(path);
} catch (IOException e) {
log.error(ExceptionUtils.getStackTrace(e));
return null;
}
}
파일 이동하기
// path: 파일 경로
public void mvFile(Path path) {
// 파일이 존재하면 백업합니다
if (Files.exists(path)) {
try {
LocalDateTime now = LocalDateTime.now();
String format = now.format(DateTimeFormatter.ofPattern("yyyyMMddHHmmss"));
if (isBackupPathExist(path)) {
Files.move(path,
Path.of(getFilePath(path) + "-bk/" + path.getFileName() + "." + format),
StandardCopyOption.REPLACE_EXISTING);
}
} catch (Exception e) {
log.error(ExceptionUtils.getStackTrace(e));
}
}
}
파일 경로 찾기
public String getFilePath(Path path) {
return path.getParent().toString();
}
반응형
'Server' 카테고리의 다른 글
Spring Batch 의 Scope 영역 (0) | 2021.10.21 |
---|---|
Spring Batch 관련 링크 모음 (0) | 2021.10.21 |
Vi / Vim 에서 줄 번호 보여주기 명령 (0) | 2021.09.01 |
Linux Vim 전체 지우기 (0) | 2021.08.20 |
Maven Home Path 적용하기 (0) | 2021.08.19 |
Jenkins 에서 원격 서버 프로세스 재기동시키기 (0) | 2021.08.19 |
댓글
공지사항