728x90
오늘은 fs/promises 모듈, async await 구문을 활용해 파일 생성 및 쓰기 예시를 만들어 보겠습니다
fs 모듈은 posix 표준 함수를 본보기로 삼아 모방한 방식으로 만든 파일 읽기, 쓰기 등 운영체제의 파일 시스템과 상호작용하는 기능을 제공하는 모듈입니다.
fs/promises 모듈은 promise 객체를 리턴해주는 fs 모듈의 메소드를 제공합니다
fs 모듈 관련 자세한 설명은 아래 링크를 참고해 주세요
https://nodejs.org/docs/latest-v22.x/api/fs.html
1.프로젝트 생성 및 초기화
mkdir 생성할 폴더명
cd 방금 생성한 폴더명
npm init -y
=> 원하는 경로에 폴더를 생성하고 해당 폴더로 이동 후 프로젝트 생성 및 초기화 시켜줍니다.
2.파일 생성에 사용할 js 파일 생성
touch js파일명
저는 위 이미지와 같이 생성하였습니다.
3.파일 생성에 사용할 js 파일 코드 작성
// fs/promises 모듈 import
const fs = require('node:fs/promises');
// path 모듈 import
const path = require('node:path');
// 생성할 파일의 경로와 파일명 설정
const filePath = path.join(__dirname, '생성할 파일명 입력');
// 파일에 쓸 내용 입력
const fileContent = '\n\n\n\nfs/promises 및 async await를 사용해 생성한 파일에 넣을 내용입니다(1)\n\n\n\nfs/promises 및 async await를 사용해 생성한 파일에 넣을 내용입니다(2)';
async function createAndWriteFile() {
try {
// 파일 열기 (쓰기 전용, 없으면 파일 생성)
// w 옵션: 쓰기 전용 모드로 열며 파일이 이미 존재하면 파일의 기존 내용을 모두 삭제해 비운상태로 만들고 새로 작성
const fd = await fs.open(filePath, 'w');
// 파일에 내용 쓰기
await fd.writeFile(fileContent, 'utf8');
// 파일 닫기
await fd.close();
console.log(`(성공) 파일 생성 및 내용 기입 완료 되었습니다: ${filePath}`);
} catch (err) {
console.error('파일 생성 중 오류 발생:', err);
}
}
createAndWriteFile();
실행 결과
실행시 파일이 생성되고 해당 파일에 내용이 쓰여진 것을 확인할 수 있습니다.
'Nodejs' 카테고리의 다른 글
[Nodejs]http 모듈 활용해 서버 만들기 (4) | 2024.12.17 |
---|---|
[Nodejs]비동기, 콜백 방식으로 파일 생성 및 쓰기 예시 만들기 (0) | 2024.12.11 |
[Nodejs]동기 방식으로 파일 생성 및 쓰기 예시 만들기 (0) | 2024.11.29 |
[Nodejs]path 사용하기 (4) | 2024.09.25 |
[Nodejs]argon2 사용하기 (0) | 2024.09.19 |