TIL # 2022.01.25

kdobro_dev·2022년 1월 25일
0

TIL (Today I Learned)

목록 보기
33/56
post-thumbnail

Node.js # fs.readFile

📝오늘 배운 내용

오늘은 Node.js에서 로컬에 존재하는 파일을 읽어올 때 사용하는 메소드인 fs.readFile에 대해 알아보자.

fs.readFile(path, [options], callback)

fs.readFile 메소드는 비동기적으로 파일 내용 전체를 읽는다. 그리고 이 메소드를 실행할 때는 인자 3개를 넘길 수 있다.

먼저 path에는 파일 이름을 인자로 넘길 수 있다. 총 4가지 종류의 타입을 넘길 수 있지만 일반적으로 문자열 타입으로 넘긴다.

  • path \string\Buffer\URL\integer

예를 들어, /Desktop/test.txt 라는 파일을 불러오는 것을 코드로 작성한다면 이런식으로 작성 할 수 있다.

fs.readFile('/Desktop/test.txt', ..., ...)

다음은 options이다. 대괄호로 감싼 두 번째 인자 options는 넣을 수도 있고, 넣지 않을 수도 있다.
대괄호는 선택적 인자를 의미한다.그리고 options는 객체 형태 또는 문자열로 넘길 수 있다. 문자열로 전달할 경우 인코딩을 넘긴다.

예를 들어, 아래와 같이 코드를 작성할 수 있다.

let options = {
  encoding: "utf8",
  flag: 'r'
}

fs.readFile('/Desktop/test.txt', options, ...)

마지막으로 callback이 있다.
callback인자 자리에는 콜백 함수를 전달한다. 파일을 읽고 난 후에 비동기적으로 실행이 되는 함수이다.
콜백 함수에는 총 2가지의 파라미터가 존재한다. 에러가 발생하지 않으면 err는 null이 되며, data에 문자열이나 Buffer라는 객체가 전달된다. data는 파일의 내용이다.
예를 들어, 아래와 같이 코드를 작성할 수 있다.

fs.readFile('/Desktop/test.txt', 'utf8', (err,data) => {
  if (err) {
    throw err;
  }
  console.log(data);
})
profile
do your best at any moment

0개의 댓글