파일 시스템에 접근하는 모듈
- 파일/폴더 생성, 삭제, 읽기, 쓰기 가능
- 웹 브라우저에서는 제한적이었으나 노드는 권한을 갖고 있음.
readme.txt라는 파일을 만들고 '읽기 파일' 이라는 텍스트를 저장해두자.
이후 프로미시스 형식으로 파일을 읽으면 성공적으로 READ 완료
write도 같은 방식으로 손쉽게할 수 있다.
then을 사용하여 파일을 write(생성)한 이후에 바로 read까지
비동기 방식으로 실행된다. 비동기-논블로킹 방식이 효율적이므로 순서를 잘 고려하자.
fs는 동기, 비동기 모두를 지원한다.
const fs = require('fs');
let data = fs.readFileSync('./readme.txt');
console.log(data.toString());
이런식으로 뒤에 Sync만 붙여주면 된다.
동기방식은 서버 실행된후, 아니면 1번만 실행될때만 사용한다.
대부분의 상황에서 비동기를 권장한다.
비동기로 순서를 정해서 실행하려면 다음과 같이 할 수 있다.
const fs = require('fs').promises;
async function main()[
let data = await fs.readFile('./readme.txt')
console.log('1번', data.toString());
data = await fs.readFile('./readme.txt')
console.log('2번', data.toString());
data = await fs.readFile('./readme.txt')
console.log('3번', data.toString());
data = await fs.readFile('./readme.txt')
console.log('4번', data.toString());
data = await fs.readFile('./readme.txt')
}
main();
실행 결과의 모습
'Node.js' 카테고리의 다른 글
[NodeJS] 라우터 분리하기 (0) | 2025.02.17 |
---|---|
[NodeJS] Express (0) | 2025.02.11 |
[NodeJS] HTTP 모듈로 서버 만들기(REST API) (0) | 2025.02.03 |
[NodeJS] 버퍼와 스트림 (0) | 2025.02.01 |
[NodeJS] worker_threads (0) | 2025.01.30 |