fs 모듈은 Node.js에 내장되어 있기 때문에 별도 라이브러리 설치 없이 바로 사용할 수 있다
추가로 비동기 API와 동기 API를 모두 제공하고 있다 (본인이 원하는 성격에 맞춰 사용하면 된다)
fs 에서 비동기 API는 마지막 인자로 callback 함수를 받고 아무값도 반환하지 않지만, 동기 API는 return 값을 반환하며 exception을 일으킬 수 있다
간단하게 몇가지만 살펴보면 다음과 같다
import { readFileSync, readFile } from "fs";
// 동기 (한 작업을 마치기 전까지 다른 작업 불가)
try {
const data = readFileSync("filename", [options]);
console.log(data);
} catch (error) {
console.log(error);
}
// 비동기
readFile("filename", [options], (err, data) => {
if (err) {
console.log(err);
} else {
console.log(data);
}
});
import { writeFileSync, writeFile } from "fs";
// 동기 (한 작업을 마치기 전까지 다른 작업 불가)
try {
writeFileSync("filename", "data", [options]);
} catch (error) {
console.log(error);
}
// 비동기
writeFile("filename", "data", [options], (err) => {
if (err) {
console.log(err);
} else {
console.log("The file has been saved!");
}
});
import { unlinkSync, unlink } from "fs";
// 동기 (한 작업을 마치기 전까지 다른 작업 불가)
try {
unlinkSync("filename");
} catch (error) {
console.log(error);
}
// 비동기
unlink("filename", (err) => {
if (err) {
console.log(err);
} else {
console.log("filename was deleted");
}
});
추가적으로 api가 더 있지만 여기에 다 기술할 수 없으므로 추가 정보는 아래 링크에서 확인하도록 한다