const fs = require('fs'); //파일 읽기 fs.readFile('./readme.txt', (err, data) => { if(err) { throw err; } console.log(data.toString()); }); //파일 쓰기(만들기) fs.writeFile('./writeme.txt', '내용을 써주세요', (err, data) => { if(err) { throw err; } fs.readFile('./writeme.txt', (err, data) => { if(err) { throw err; } console.log(data.toString()); }); });
동기 비동기
fs method는 뒤에 Sync를 붙이면 동기식으로 작동한다.
주로 데스크탑 프로그램이나 딱 한번만 실행되는 함수에서 사용한다.
ex) fs.readFileSync, fs.writeFileSync 등등.
하지만 실제로는 동기식 작동은 다른 작업을 수행할 시간을 잡아먹으므로,
기존처럼 비동기식으로 많이 쓴다. callback hell을 탈피하기 위해서는 util.promisify를 사용하거나,
Node10의 fs.promise를 사용해서 극복한다.
//fs.readFileSync로 동기적인 호출이 가능 const fs = require('fs'); console.log('start'); let data = fs.readFileSync('./readme.txt'); console.log('1st', data.toString()); data = fs.readFileSync('./readme.txt'); console.log('2nd', data.toString()); data = fs.readFileSync('./readme.txt'); console.log('3rd', data.toString()); console.log('end') //동기적 호출로써, start, 1 ~ 3, end까지 차례대로 나온다.
events 모듈 - Nodejs (0) | 2019.05.14 |
---|---|
Buffer & Stream - Nodejs (0) | 2019.05.14 |
util(deprecate, promisify) - Nodejs (0) | 2019.05.14 |
crypto 모듈을 이용한 양방향 암호화 - Nodejs (0) | 2019.05.14 |
crypto 모듈을 이용한 단방향 암호화(hash) - Nodejs (0) | 2019.05.14 |
댓글 영역