본문 바로가기

Node.js

10. fs module

fs module

- 파일 시스템 관련 작업을 수행하는 기능을 제공

const fs = require("fs");

 

fs.renameSync()

- 메소드는 동기적으로 파일 또는 디렉토리의 이름을 변경

- 동기 메소드이기 때문에 try catch로 묶어주는게 좋다

try {
    fs.renameSync(old path ,new path)
} 
catch (e) {
    console.error(e);
}

 

try {
    fs.renameSync('./test.txt', './test-new.txt')
} 
catch (e) {
    console.error(e);
}

 

fs.rename()

- 비동기적인 파일 또는 디렉토리 이름 변경 메소드

fs.rename(oldPath, newPath, callback(error));

 

fs.rename('./test-new.txt', './test-new-new.txt', (error) => {
    console.log(error);
});

fs.promises

- 프로미스 기반의 파일 시스템 메소드

 

fs.promises.rename()

- 프로미스 기반의 파일 또는 디렉토리 이름 변경 메소드

fs.promises.rename(oldPath, newPath)
	.then()
    .catch((error) => console.log(error));

 

fs.promises.rename('./test-new-new.txt', './test.txt')
    .then(()=> console.log("done!")) // 변경되었다면 done!
    .catch((error) => console.log(error)); // 실패했으면 error

 

fs.promises.readFile()

- 프로미스 기반의 파일 읽기 메소드

fs.promises.readFile(경로, 인코딩방식);

 

 

읽어올 test.txt파일

fs.promises.readFile("./test.txt")
    .then((data) => console.log(data))
    .catch(console.error);

// <Buffer 48 65 6c 6c 6f 21 20 4e 6f 64 65 2e 6a 73 7e 21 21>

// utf-8로 인코딩 방식 지정
fs.promises.readFile("./test.txt", "utf-8")
    .then((data) => console.log(data))
    .catch(console.error);

// Hello! Node.js~!!

 

fs.promises.writeFile

- 프로미스 기반의 파일 쓰기 메소드

 

fs.promises.writeFile(경로, 출력할 데이터);

 

fs.promises.writeFile("./write.txt", "Hello! 파일 출력 에제입니다!")
    .catch(console.error);

 

fs.promises.appendFile()

- 프로미스 기반의 파일 추가 쓰기 메소드

 

fs.promises.appendFile(경로, data)

 

fs.appendFile("./write.txt", "추가로 글을 출력합니다!")
    .catch(console.error);

이전에 만들었던 text.txt에 추가로 출력됨

 

fs.promises.copyFile()

- 프로미스 기반의 파일 복사 메소드

 

fs.promises.copyFile(복사할 파일의 경로, 복사될 대상 파일의 경로);

 

fs.promises.copyFile("./write.txt", "./write2.txt")
    .catch(console.error);

 

fs.promises.mkdir()

- 프로미스 기반의 디렉토리 생성 메소드

fs.promises.mkdir(경로);

 

fs.promises.mkdir("subdir")
    .catch(console.error);

디렉토리가 생성됨

 

fs.promises.readdir()

- 프로미스 기반의 디렉토리 읽기 메소드

fs.promises.readdir(경로);

 

// 현재 디렉토리의 파일들 가져오기
fs.readdir('./')
    .then(console.log)
    .catch(console.error);

'Node.js' 카테고리의 다른 글

12. 스트림(Stream)  (0) 2023.04.19
11. 버퍼(buffer)  (0) 2023.04.19
9. path module  (0) 2023.04.19
8. timer  (0) 2023.04.19
7. process module  (0) 2023.04.18