웹 백엔드/Npm & Express

Npm(Node.js) - 디렉토리(폴더)에 모든 파일 읽어오기(readdir, readFile)

2018. 1. 12. 01:11

npm(node.js) - 파일 시스템(readdir, readFileSync, readFile)

 

① npm - node.js 파일 시스템(File System) 관련 모듈들은 동기/비동기 관련 함수를 제공합니다.

②  npm 어플리케이션 개발 중 I/O 작업 관련 동기/비동기 작동 방식에 대해 정확히 알고 있어야 합니다.

③  readdir 함수를 통한 디렉토리에 있는 모든 파일 읽기 작업 중 동기/비동식 함수를 알맞게 사용해야 합니다.

 

 

npm(node.js) - readFileSync(동기식) 파일 읽기


기본 소스
- readFileSync(동기식)는 주로 콜백(Callback)을 사용하지 않고 읽어 온 파일을 리턴 받아 사용합니다.
1
2
3
4
5
6
7
8
9
10
11
12
fs.readdir(path.join(__dirname, '파일경로'), "utf8", function(err, files){
    if (err) {
       res.status(500);
       throw err;
    }
 
    files.forEach(function(filename){
       //파일을 순서(동기)대로 읽는다.(readFileSync)
       var fileData = fs.readFileSync(path.join(__dirname, '파일경로' + filename), 'utf8')
       console.log('fileData ', fileData )
    });
});
Colored by Color Scripter
cs


실행 화면
- 파일을 순서대로 읽어오는 것을 알 수 있습니다.



 

npm(node.js) - readFile(비동기식) 파일 읽기


기본 소스
- readFile(비동기식)는 주로 콜백(Callback)을 사용해서 읽어 온 파일들을 처리합니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
fs.readdir(path.join(__dirname, '파일경로'), "utf8", function(err, files){
    if (err) {
       res.status(500);
       throw err;
    }
 
    files.forEach(function(filename){
       //파일을 비순서(비동기)대로 읽는다.(readFile)
       fs.readFile(path.join(__dirname, '파일경로' + filename), 'utf8', function(err, fileData){
          if (err) {
            res.status(500);
            throw err;
          }
          console.log('fileData ', fileData )
       });
    });
});
Colored by Color Scripter
cs


실행 화면
- 파일을 순서없이 읽어오는 것을 알 수 있습니다.


npm 파일시스템에 대한 API 문서는 아래 URL을 참고하세요.
- https://nodejs.org/api/fs.html




 


저작자표시 동일조건 (새창열림)

'웹 백엔드 > Npm & Express' 카테고리의 다른 글

파이썬(Python) - 가상환경(Venv)에서 Node.js(npm) 프로젝트 설정 방법  (2) 2020.04.21
Npm(Node.js) - 기초 명령어 사용법 정리  (0) 2017.11.23
Npm(Node.js) - 모듈(module) 설치, 삭제, 버전 업데이트 방법  (1) 2017.10.11
Npm(Node.js) - 버전 확인 및 기타 에러 발생 시 캐시(Cache) 삭제 방법  (2) 2017.10.10
'웹 백엔드/Npm & Express' 카테고리의 다른 글
  • 파이썬(Python) - 가상환경(Venv)에서 Node.js(npm) 프로젝트 설정 방법
  • Npm(Node.js) - 기초 명령어 사용법 정리
  • Npm(Node.js) - 모듈(module) 설치, 삭제, 버전 업데이트 방법
  • Npm(Node.js) - 버전 확인 및 기타 에러 발생 시 캐시(Cache) 삭제 방법
[좋은사람]
[좋은사람]
좋은사람의 개발 노트 입니다.
[좋은사람]
좋은사람의 개발 노트
[좋은사람]
전체
오늘
어제
  • 전체보기 (189)
    • 언어 (68)
      • Java (12)
      • Python (39)
      • C# (5)
      • PHP (4)
      • Go (8)
    • OS (18)
      • Linux (7)
      • Windows 10 (5)
      • Etc (6)
    • 빅데이터 & 분석 (8)
      • R (0)
      • Machine Learning (8)
    • 네트워크 (4)
      • Etc (4)
    • 웹 프론트 (25)
      • Javascript & ECMA (8)
      • Vue (13)
      • React (4)
    • 웹 백엔드 (15)
      • Spring (3)
      • Django & Flask (7)
      • Npm & Express (5)
    • 개발도구 (18)
      • Jetbrains (3)
      • Eclipse (5)
      • Git (4)
      • Atom & VScode (6)
    • 데이터베이스 (7)
      • Oracle (2)
      • MariaDB & MySQL (2)
      • Etc (3)
    • 모바일 (6)
      • Android (3)
      • Hybrid (3)
    • 라이프 (20)
      • 여행 & 일상 (6)
      • 취미 (14)

블로그 메뉴

  • 홈으로
  • 블로그소개
  • 태그
  • 방명록

공지사항

인기 글

태그

  • Django
  • 커펌
  • go
  • nodejs
  • 3DS
  • javascript
  • Eclipse
  • ATOM
  • Linux
  • 윈도우10
  • Anaconda
  • SpringSTS
  • 코딩 면접
  • ubuntu
  • python
  • 디자인패턴
  • react
  • 인텔리j
  • 이클립스
  • Database
  • 미뮤
  • Thread
  • npm
  • 2DS
  • windows10
  • flask
  • ps4
  • 아톰 에디터
  • OCR
  • vue.js
  • 리액트
  • Algorithm
  • CFW
  • 개발자 면접
  • Git
  • Java
  • centos
  • php
  • 머신러닝
  • C#

최근 댓글

최근 글

hELLO · Designed By 정상우.
[좋은사람]
Npm(Node.js) - 디렉토리(폴더)에 모든 파일 읽어오기(readdir, readFile)
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.