2021.04.10
17일차
입사 34일차.
React를 공부하기 위해 샀던 책 2권에는 fs에 대한 설명없이 fs.으로 시작하는 메소드들을 사용했기 때문에 좀 당황스러웠다. 내가 사용하는 기능들에 대해서는 꼭 알고 넘어가는 것이 나의 공부목표이기에 fs모듈에 대한 개념을 알고 기록하려고 한다.
1. fs 모듈
① 출처 : 오픈튜토리얼스 (링크)
② FileSystem의 약자. 파일처리와 관련된 모듈이다.
③ const fs = require('fs'); 를 코드 맨위에 선언해주어야 사용가능하다.
2. fs.writeFile( '경로 및 파일명', 작성할내용, [파일을 저장하는 방식], function(err) {} )
① fs.writeFile()은 비동기방식, fs.writeFileSync()는 동기방식이다.
② [파일을 저장하는 방식]은 생략가능하다. 'utf8'을 적어주면 된다.
③ 동기처리방식과 다른 것은 callback함수를 적어주는 것이다.
// fs모듈을 사용하기 위한 선언 const fs = require('fs'); { // 작성할 내용 let contents = 'writeFile() 테스트'; // 비동기처리방식 fs.writeFile( 'writeTest.txt', contents, function(err) { console.log( 'writeFile() 비동기쓰기' ); }; |
④ 제대로 동작했다면 writeTest.txt 파일이 생성되고, contents에 작성한 내용이 텍스트파일의 내용으로 저장된다.
2. fs.readFile( '경로 및 파일명', [파일을 저장하는 방식], function( err, 파라미터 ) {} )
① fs.readFile()은 비동기방식, fs.readFileSync()는 동기방식이다.
② [파일을 저장하는 방식]은 생략가능하다. readFile()을 사용할때는 적어주는 것이 좋다.
// fs모듈을 사용하기 위한 선언 const fs = require('fs'); { // 텍스트 파일 읽어오기 ( option 생략 ) let readData = fs.readFile( 'writeTest.txt', function( err, data ) { console.log( 'readData = ', data ); }); // 텍스트 파일 읽어오기 ( option = 'utf8' ) readData1 = fs.readFile( 'writeTest.txt', 'utf8', function( err, data ) { console.log( 'readData = ', data ); }); // 텍스트 파일 읽어오기 ( 백틱사용하기 ) let readData = fs.readFile( 'writeTest.txt', function( err, data ) { console.log( `readData = ${data}`); }); |
[console] readData =<Buffer 77 72 69 74 65 46 69 6c 65 28 29 20 ed 85 8c ec 8a a4 ed 8a b8> readData = writeFile() 테스트 readData = writeFile() 테스트 |
③ readFile()을 사용할때, option을 사용하지 않으면 원하는 값이 출력되지 않는다.
④ 백틱과 프로퍼티를 사용하면 option을 생략해도 원하는 값을 출력할 수 있다.
JAVA의 FileinputStream, inputStreamReader와 유사한 기능을 가진 모듈이라고 생각하면 이해하기 쉬울 것 같다.
'프론트엔드 > 자바스크립트' 카테고리의 다른 글
[FE/JS] 정규표현식 정리 (0) | 2021.04.15 |
---|---|
[FE/JS] JavaScript로 Json 생성하기 (0) | 2021.04.12 |
[FE/JS] 주민등록번호 유효성체크 (0) | 2021.04.09 |
[FE/JS] 사업자번호 유효성체크 (0) | 2021.04.09 |
[FE/JS] JavaScript ES6 문법정리2 (0) | 2021.04.01 |
댓글