read file in nodejs / nodejs file read
read file in nodejs
util.promisify
를 이용해서 async/await 을 사용했다. 특정 offset 부터 읽고 싶을 때 사용할 수 있다. 주의할 점은 아래 코드는 마지막 부분에 file size 를 넘어갈 수 있는데, 그부분에 대한 고려는 없다. 관련해서는 ref. 1을 참고하면 될 것 같다.
import * as fs from 'fs';
import * as util from 'util';
...
const open = util.promisify(fs.open);
const fstat = util.promisify(fs.fstat);
const fwriteFile = util.promisify(fs.writeFile);
...
const offsetStart = 1000
const offsetEnd = 2000
const fd = await open("11-00", "r");
const fstats = await fstat(fd)
const fileSize = fstats.size;
const bufferOffset = 0
const chunkSize = offsetEnd - offsetStart + 1
const buffer = Buffer.alloc(chunkSize);
const readSize = fs.readSync(fd, buffer, bufferOffset, chunkSize, offsetStart);
console.log(buffer)
await fwriteFile('res.txt', JSON.stringify(buffer) + '\n', { flag: 'a+' });
댓글 없음:
댓글 쓰기