티스토리 뷰

반응형

실전에서도 유용하게 쓰는 자바의 파일 사용법 모음집입니다! 

파일 쓰기 

// 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();
    }
반응형
댓글
공지사항