자바스크립트에서 파일 다루기
자바스크립트는 웹 브라우저 환경에서 파일 조작을 가능하게 하는 매우 인기 있는 프로그래밍 언어입니다. 파일 처리 방법을 자세히 알아봅시다!
Node.js 환경은 파일 처리를 포함한 다양한 스크립트에서 활용됩니다. Node.js는 자바스크립트 코드를 실행하기 위한 환경일 뿐입니다. Node.js에 대한 기본적인 이해가 있다고 가정합니다.
자바스크립트에서 파일 처리에 대해 배우기 위해 튜토리얼로 바로 넘어가 보겠습니다.
자바스크립트에서의 파일 처리
파일 처리에는 생성, 읽기, 업데이트, 이름 변경 및 삭제와 같은 다양한 작업이 포함됩니다. 기존 시스템에서 파일에 접근해야 할 때가 많으며, 처음부터 모든 것을 만들 수는 없습니다. Node.js는 파일 처리를 위해 'fs' (파일 시스템)라는 모듈을 제공합니다.
fs 모듈의 다양한 메서드를 살펴보겠습니다.
fs.open()
fs.open() 메서드는 파일 경로와 모드, 두 개의 인수를 필요로 합니다.
경로는 파일의 위치를 지정하는 데 사용됩니다.
모드 인수는 파일을 추가, 쓰기 또는 읽기 모드와 같이 다양한 방식으로 열 때 사용됩니다.
특정 모드로 파일을 열면 해당 모드에 해당하는 작업만 수행할 수 있습니다. 모드와 각 모드에서 가능한 작업 목록을 살펴봅시다.
| 모드 | 작업 |
| 'r' | 읽기 모드로 파일 열기 |
| 'a' | 추가 모드로 파일 열기 |
| 'w' | 쓰기 모드로 파일 열기 |
| 'a+' | 추가 및 읽기 모드로 파일 열기 |
| 'w+' | 쓰기 및 읽기 모드로 파일 열기 |
| 'r+' | 읽기 및 쓰기 모드로 파일 열기 |
지정된 경로에 파일이 존재하지 않으면 새로운 빈 파일이 생성됩니다. 다양한 모드로 파일을 여는 예시 코드를 확인해 보겠습니다.
const fs = require("fs");
fs.open("sample.txt", "w", (err, file) => {
if (err) throw err;
console.log(file);
});
fs.open() 메서드는 읽기 모드로 파일을 열 때 파일이 없으면 오류를 발생시킵니다. 쓰기 및 추가 모드에서는 새로운 빈 파일을 생성합니다.
열린 파일에 대해 다양한 작업을 수행할 수 있습니다. fs 모듈의 다른 필수 메서드를 학습한 후, 이 튜토리얼의 마지막 부분에서 전체 예제 프로그램을 작성할 것입니다.
fs.appendFile()
fs.appendFile() 메서드는 파일의 끝에 내용을 추가하는 데 사용됩니다. 파일이 지정된 경로에 존재하지 않으면 새 파일을 생성합니다. 아래 코드를 사용하여 파일에 몇 가지 내용을 추가해 봅시다.
const fs = require("fs");
fs.appendFile("sample.txt", "내용 추가 중", (err) => {
if (err) throw err;
console.log("완료되었습니다!");
});
fs.writeFile()
fs.writeFile() 메서드는 파일에 내용을 쓰는 데 사용됩니다. 파일이 지정된 경로에 존재하지 않으면 새 파일을 생성합니다. 내용을 파일에 쓰려면 아래 코드를 사용해 보십시오.
const fs = require("fs");
fs.writeFile("sample.txt", "내용 쓰기", (err) => {
if (err) throw err;
console.log("완료되었습니다!");
});
fs.readFile()
fs.readFile() 메서드는 파일에서 내용을 읽는 데 사용됩니다. 파일이 지정된 경로에 존재하지 않으면 오류가 발생합니다. 아래 코드를 살펴보세요.
const fs = require("fs");
fs.readFile("sample.txt", (err, data) => {
if (err) throw err;
console.log(data.toString());
});
fs.unlink()
fs.unlink() 메서드는 파일을 삭제하는 데 사용됩니다. 파일이 지정된 경로에 존재하지 않으면 오류가 발생합니다. 다음 코드를 확인하세요.
const fs = require("fs");
fs.unlink("sample.txt", (err) => {
if (err) throw err;
console.log("파일이 삭제되었습니다!");
});
fs.rename()
fs.rename() 메서드는 파일 이름을 변경하는 데 사용됩니다. 파일이 지정된 경로에 존재하지 않으면 오류가 발생합니다. 아래 코드를 사용하여 파일 이름을 변경해 보세요!
const fs = require("fs");
fs.rename("sample.txt", "sample_one.txt", (err) => {
if (err) throw err;
console.log("파일 이름이 변경되었습니다!");
});
부가 정보
이제 fs (파일 시스템) 모듈의 다양한 파일 처리 메서드에 익숙해졌을 것입니다. 이 튜토리얼에서 살펴본 메서드를 사용하여 대부분의 파일 작업을 수행할 수 있습니다. 약속한 대로 fs.open() 및 fs.readFile() 메서드를 사용하여 파일을 열고 내용을 읽는 예제 스크립트를 살펴보겠습니다.
const fs = require("fs");
fs.open("sample.txt", "r", (err, file) => {
if (err) throw err;
fs.readFile(file, (err, data) => {
if (err) throw err;
console.log(data.toString());
});
});
결론
이것으로 이번 튜토리얼은 마무리됩니다. 파일 처리 방법을 사용하면 일상적인 작업에서 반복적인 작업을 자동화할 수 있습니다. 파일 처리에 필수적인 메서드를 배우셨기를 바랍니다.
즐거운 코딩 되세요! 🙂