728x90
반응형
1. 파일 입출력
파일 입출력(file I/O)은 매우 중요한 기능 중 하나로, 주로 fs (File System) 모듈을 사용해서 파일을 읽고 쓰는 작업을 수행합니다.
const fs = require("fs");
2. 파일 읽기
1. 동기 방식 (Synchronous)
코드가 순서대로 실행되며, 파일을 다 읽을 때까지 다음 줄로 넘어가지 않습니다.
const fs = require("fs");
const data = fs.readFileSync("example.txt", "utf8");
console.log("파일 내용:", data);
2. 비동기 방식 (Asynchronous)
파일을 읽는 동안 다음 코드를 먼저 실행하고, 다 읽으면 콜백 함수로 결과를 넘깁니다.
fs.readFile("example.txt", "utf8", (err, data) => {
if (err) {
console.error("파일 읽기 실패:", err);
return;
}
console.log("파일 내용:", data);
});
3. 파일 쓰기
1. 동기 방식
fs.writeFileSync("output.txt", "이 내용이 파일에 저장됩니다.");
console.log("파일 저장 완료 (동기)");
2. 비동기 방식
fs.writeFile("output.txt", "비동기 방식으로 저장합니다.", (err) => {
if (err) {
console.error("저장 실패:", err);
return;
}
console.log("파일 저장 완료 (비동기)");
});
4. 파일에 내용 추가
fs.appendFile("output.txt", "\n새로운 줄이 추가됩니다.", (err) => {
if (err) throw err;
console.log("내용 추가 완료");
});
5. 파일 삭제하기
fs.unlink("output.txt", (err) => {
if (err) throw err;
console.log("파일 삭제 완료");
});
728x90
반응형