백엔드/Node.js

파일 입출력

Ryuzy 2025. 4. 22. 00:45
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
반응형

'백엔드 > Node.js' 카테고리의 다른 글

Express  (0) 2025.04.22
EJS  (0) 2025.04.22
http 모듈  (0) 2025.04.22
모듈  (0) 2025.04.18
package.json  (0) 2025.04.18