모듈 기본 모듈

모듈 fs

파일 시스템 처리 모듈

지침:

1
var fs = require('fs');

참고 사항:

  • fs.watch(filename)상속에서 반환 실행EventEmitter Watcher, 'change', 'changeonly', 'renameonly' 3가지 이벤트 지원
  • fs.watchFile(target)그리고 fs.unwatchFile(target)여전히 쌍으로 사용할 수 있습니다.
  • fs.watchFile(target) 에서 상속된 것을 반환합니다. EventEmitter NS StatsWatcher객체, 호출에 fs.unwatchFile(target)해당하는 호출 StatsWatcher.close().
  • 리눅스 구현에 자외선 때문에, 옵션은 WIN32 / 다윈은 안정 지원입니다. 당신은 여전히 리눅스에서 사용하려고 시도 할 수 있지만 찾을 수 있습니다 여러분의 기대와 다를를 콜백 시간fs.watchrecursivefs.watch('/[path](path.md)/to', { recursive: true }, handler)handler

물체

constants

fs 모듈의 상수 객체

1
fs_constants fs.constants;

정적 함수

exists

지정된 파일 또는 디렉토리가 존재하는지 조회

1
static Boolean fs.exists(String path) async;

호출 매개변수:

  • path: 문자열, 쿼리할 경로 지정

반환 결과:

  • Boolean, 파일 또는 디렉토리가 존재함을 나타내기 위해 True를 반환합니다.

access

지정된 파일에 대한 사용자 권한 조회

1 2
static fs.access(String path, Integer mode = 0) async;

호출 매개변수:

  • path: 문자열, 쿼리할 경로 지정
  • mode: 정수, 쿼리 권한 지정, 기본값은 파일 존재 여부

하드 링크 파일 생성, 이 방법은 Windows에서 지원되지 않습니다.

1 2
static fs.link(String oldPath, String newPath) async;

호출 매개변수:

  • oldPath: 문자열, 소스 파일
  • newPath: String, 생성할 파일

지정된 파일 삭제

1
static fs.unlink(String path) async;

호출 매개변수:

  • path: 문자열, 삭제할 경로 지정

mkdir

디렉토리 생성

1 2
static fs.mkdir(String path, Integer mode = 0777) async;

호출 매개변수:

  • path: 문자열, 생성할 디렉토리의 이름을 지정합니다.
  • mode: 정수, 파일 권한 지정, Windows는 이 매개변수를 무시합니다. 기본값: 0777

디렉토리 생성

1 2
static fs.mkdir(String path, Object opt) async;

호출 매개변수:

  • path: 문자열, 생성할 디렉토리의 이름을 지정합니다.
  • opt: 객체, 생성 매개변수 지정

생성 매개변수에는 다음 값이 포함될 수 있습니다.

1 2 3 4
{ recursive: false, // 指定是否父目录不存在是是否自动创建,默认值: false mode: 0777 // 指定文件权限,Windows 忽略此参数,默认值: 0777 }

rmdir

디렉토리 삭제

1
static fs.rmdir(String path) async;

호출 매개변수:

  • path: 문자열, 삭제할 디렉토리의 이름을 지정합니다.

rename

파일 이름 바꾸기

1 2
static fs.rename(String from, String to) async;

호출 매개변수:

  • from: 문자열, 이름이 변경된 파일 지정
  • to: 문자열, 수정할 새 파일 이름 지정

copyFile

src를 dest에 복사합니다. 기본적으로 dest가 이미 있으면 덮어씁니다.

1 2 3
static fs.copyFile(String from, String to, Integer mode = 0) async;

호출 매개변수:

  • from: 문자열, 복사할 소스 파일의 이름을 지정합니다.
  • to: 문자열, 복사할 대상 파일의 이름을 지정합니다.
  • mode: 정수, 복사 작업의 수정자를 지정합니다. 기본값은 0입니다.

mode는 복사 작업의 동작을 지정하는 선택적 정수입니다. 두 개 이상의 값(예:fs.constants.COPYFILE_EXCL | fs.constants.COPYFILE_FICLONE).

  • fs.constants.COPYFILE_EXCL-대상이 이미 있는 경우 복사 작업이 실패합니다.
  • fs.constants.COPYFILE_FICLONE-복사 작업이 기록 중 복사 링크를 생성하려고 시도합니다. 플랫폼이 기록 중 복사를 지원하지 않는 경우 백업 복사 메커니즘이 사용됩니다.
  • fs.constants.COPYFILE_FICLONE_FORCE-복사 작업이 기록 중 복사 링크를 생성하려고 시도합니다. 플랫폼이 기록 중 복사를 지원하지 않으면 복사 작업이 실패합니다.

chmod

지정된 파일의 접근 권한을 설정합니다. Windows는 이 방법을 지원하지 않습니다.

1 2
static fs.chmod(String path, Integer mode) async;

호출 매개변수:

  • path: 문자열, 작업 파일 지정
  • mode: 정수, 설정된 접근 권한 지정

lchmod

지정된 파일에 대한 접근 권한을 설정합니다. 파일이 소프트 링크인 경우 파일에 대한 권한은 변경되지 않으며, macOS 및 BSD 시리즈 플랫폼에서만 사용 가능합니다.

1 2
static fs.lchmod(String path, Integer mode) async;

호출 매개변수:

  • path: 문자열, 작업 파일 지정
  • mode: 정수, 설정된 접근 권한 지정

chown

지정된 파일의 소유자를 설정합니다. Windows는 이 방법을 지원하지 않습니다.

1 2 3
static fs.chown(String path, Integer uid, Integer gid) async;

호출 매개변수:

  • path: 문자열, 설정을 지정하기 위한 파일
  • uid: 정수, 파일 소유자 사용자 ID
  • gid: 정수, 파일 소유자 그룹 ID

lchown

지정된 파일의 소유자를 설정합니다.지정된 파일이 소프트 링크인 경우, 가리키는 파일의 소유자는 변경되지 않습니다.Windows에서는 이 방법을 지원하지 않습니다.

1 2 3
static fs.lchown(String path, Integer uid, Integer gid) async;

호출 매개변수:

  • path: 문자열, 설정을 지정하기 위한 파일
  • uid: 정수, 파일 소유자 사용자 ID
  • gid: 정수, 파일 소유자 그룹 ID

stat

지정된 파일의 기본 정보 조회

1
static Stat fs.stat(String path) async;

호출 매개변수:

  • path: 문자열, 쿼리할 파일 지정

반환 결과:

  • Stat, 파일의 기본 정보를 반환

lstat

지정된 파일의 기본 정보를 조회합니다. stat과의 차이점은 다음과 같습니다.path소프트링크일 경우 포인팅된 파일의 정보가 아닌 소프트링크의 정보를 반환합니다.

1
static Stat fs.lstat(String path) async;

호출 매개변수:

  • path: 문자열, 쿼리할 파일 지정

반환 결과:

  • Stat, 파일의 기본 정보를 반환

지정된 소프트 연결 파일을 읽으십시오. 이 방법은 Windows에서 지원되지 않습니다.

1
static String fs.readlink(String path) async;

호출 매개변수:

  • path: 문자열, 읽을 소프트 연결 파일 지정

반환 결과:

  • String, 소프트 링크가 가리키는 파일 이름을 반환

realpath

지정된 경로의 절대 경로를 반환합니다. 지정된 경로에 상대 경로가 포함되어 있으면 해당 경로도 확장됩니다.

1
static String fs.realpath(String path) async;

호출 매개변수:

  • path: 문자열, 읽을 경로 지정

반환 결과:

  • String, 처리된 절대 경로를 반환

소프트 연결 파일 생성

1 2 3
static fs.symlink(String target, String linkpath, String type = "file") async;

호출 매개변수:

  • target: String, 대상 파일(파일, 디렉토리 또는 존재하지 않는 경로일 수 있음)
  • linkpath: String, 생성될 소프트링크 파일
  • type: 문자열, 생성된 소프트 연결 유형, 선택적 유형은 '파일', '디렉토리', '접합', 기본값은 '파일', 이 매개변수는 Windows에서만 유효하며, 대상이 '접합'인 경우 경로 링크 경로는 절대 경로여야 하며 대상은 자동으로 절대 경로로 변환됩니다.

truncate

파일 크기를 수정하십시오. 지정된 길이가 소스 파일의 크기보다 크면 '\0'으로 채우십시오. 그렇지 않으면 더 많은 파일 내용이 손실됩니다.

1 2
static fs.truncate(String path, Integer len) async;

호출 매개변수:

  • path: 문자열, 수정된 파일의 경로 지정
  • len: 정수, 수정된 파일의 크기 지정

read

파일 설명자에 따라 파일의 내용을 읽습니다.

1 2 3 4 5
static Integer fs.read(Integer fd, Buffer buffer, Integer offset = 0, Integer length = 0, Integer position = -1) async;

호출 매개변수:

  • fd: 정수, 파일 기술자
  • buffer: Buffer, 작성된 결과 읽기 Buffer 물체
  • offset: 정수, Buffer 쓰기 오프셋, 기본값은 0
  • length: 정수, 파일에서 읽은 바이트 수, 기본값은 0
  • position: 정수, 파일 읽기 위치, 기본값은 현재 파일 위치

반환 결과:

  • Integer, 실제로 읽은 바이트 수

fchmod

파일 디스크립터에 따라 파일 모드가 변경됩니다. POSIX 시스템에서만 유효합니다.

1 2
static fs.fchmod(Integer fd, Integer mode) async;

호출 매개변수:

  • fd: 정수, 파일 기술자
  • mode: 정수, 파일 모드

fchown

파일 디스크립터에 따라 소유자가 변경됩니다. POSIX 시스템에서만 유효합니다.

1 2 3
static fs.fchown(Integer fd, Integer uid, Integer gid) async;

호출 매개변수:

  • fd: 정수, 파일 기술자
  • uid: 정수, 사용자 ID
  • gid: 정수, 그룹 ID

fdatasync

파일 디스크립터에 따라 데이터를 디스크에 동기화

1
static fs.fdatasync(Integer fd) async;

호출 매개변수:

  • fd: 정수, 파일 기술자

fsync

파일 디스크립터에 따라 데이터를 디스크에 동기화

1
static fs.fsync(Integer fd) async;

호출 매개변수:

  • fd: 정수, 파일 기술자

readdir

지정된 디렉토리의 파일 정보 읽기

1
static NArray fs.readdir(String path) async;

호출 매개변수:

  • path: 문자열, 조회할 디렉토리 지정

반환 결과:

  • NArray, 디렉토리의 파일 정보 배열을 반환합니다.

openFile

읽기, 쓰기 또는 읽기와 쓰기를 동시에 수행하기 위해 파일 열기

1 2
static SeekableStream fs.openFile(String fname, String flags = "r") async;

호출 매개변수:

  • fname: 문자열, 파일 이름 지정
  • flags: 문자열, 파일 열기 방법 지정, 기본값은 "r", 읽기 전용

반환 결과:

지원되는 매개변수 플래그 방법은 다음과 같습니다.

  • 'r'은 읽기 전용이며 파일이 없으면 오류가 발생합니다.
  • 'r+' 읽기 및 쓰기 모드에서 파일이 없으면 오류가 발생합니다.
  • 'w'만 쓰며 파일이 존재하지 않으면 자동으로 생성되고 존재하면 지워진다.
  • 'w+' 읽기 및 쓰기 모드에서 파일이 존재하지 않으면 자동으로 생성됩니다.
  • 'a'는 추가 메소드만 작성하면 파일이 존재하지 않을 경우 자동으로 생성됩니다.
  • 'a+' 읽기-쓰기 추가 방법으로, 파일이 존재하지 않으면 자동으로 생성됩니다.

open

파일 설명자 열기

1 2 3
static Integer fs.open(String fname, String flags = "r", Integer mode = 0666) async;

호출 매개변수:

  • fname: 문자열, 파일 이름 지정
  • flags: 문자열, 파일 열기 방법 지정, 기본값은 "r", 읽기 전용
  • mode: 정수, 파일 생성 시 파일 모드 지정, 기본값은 0666

반환 결과:

  • Integer, 열린 파일 설명자를 반환

지원되는 매개변수 플래그 방법은 다음과 같습니다.

  • 'r'은 읽기 전용이며 파일이 없으면 오류가 발생합니다.
  • 'r+' 읽기 및 쓰기 모드에서 파일이 없으면 오류가 발생합니다.
  • 'w'만 쓰며 파일이 존재하지 않으면 자동으로 생성되고 존재하면 지워진다.
  • 'w+' 읽기 및 쓰기 모드에서 파일이 존재하지 않으면 자동으로 생성됩니다.
  • 'a'는 추가 메소드만 작성하면 파일이 존재하지 않을 경우 자동으로 생성됩니다.
  • 'a+' 읽기-쓰기 추가 방법으로, 파일이 존재하지 않으면 자동으로 생성됩니다.

close

파일 기술자 닫기

1
static fs.close(Integer fd) async;

호출 매개변수:

  • fd: 정수, 파일 기술자

openTextStream

읽기, 쓰기 또는 읽기와 쓰기를 동시에 수행하기 위해 텍스트 파일 열기

1 2
static BufferedStream fs.openTextStream(String fname, String flags = "r") async;

호출 매개변수:

  • fname: 문자열, 파일 이름 지정
  • flags: 문자열, 파일 열기 방법 지정, 기본값은 "r", 읽기 전용

반환 결과:

지원되는 매개변수 플래그 방법은 다음과 같습니다.

  • 'r'은 읽기 전용이며 파일이 없으면 오류가 발생합니다.
  • 'r+' 읽기 및 쓰기 모드에서 파일이 없으면 오류가 발생합니다.
  • 'w'만 쓰며 파일이 존재하지 않으면 자동으로 생성되고 존재하면 지워진다.
  • 'w+' 읽기 및 쓰기 모드에서 파일이 존재하지 않으면 자동으로 생성됩니다.
  • 'a'는 추가 메소드만 작성하면 파일이 존재하지 않을 경우 자동으로 생성됩니다.
  • 'a+' 읽기-쓰기 추가 방법으로, 파일이 존재하지 않으면 자동으로 생성됩니다.

readTextFile

텍스트 파일을 열고 내용을 읽으십시오

1
static String fs.readTextFile(String fname) async;

호출 매개변수:

  • fname: 문자열, 파일 이름 지정

반환 결과:

  • String, 파일의 텍스트 내용을 반환합니다.

readFile

바이너리 파일을 열고 내용을 읽습니다.

1 2
static Variant fs.readFile(String fname, String encoding = "") async;

호출 매개변수:

  • fname: 문자열, 파일 이름 지정
  • encoding: 문자열, 디코딩 방법을 지정합니다. 기본값은 디코딩하지 않는 것입니다.

반환 결과:

  • Variant, 파일의 텍스트 내용을 반환합니다.

readLines

파일을 열고 배열의 텍스트 줄 그룹을 읽습니다. 줄 끝은 EOL 속성 설정에 따라 식별됩니다. 기본적으로 posix: "\n", 창: "\r\n"

1 2
static Array fs.readLines(String fname, Integer maxlines = -1);

호출 매개변수:

  • fname: 문자열, 파일 이름 지정
  • maxlines: 정수, 이번에 읽을 최대 줄 수를 지정합니다. 기본적으로 모든 텍스트 줄을 읽습니다.

반환 결과:

  • Array, 읽을 데이터가 없거나 연결이 중단된 경우 읽은 텍스트 행 배열을 반환합니다. 빈 배열

writeTextFile

텍스트 파일 생성 및 내용 작성

1 2
static fs.writeTextFile(String fname, String txt) async;

호출 매개변수:

  • fname: 문자열, 파일 이름 지정
  • txt: 문자열, 쓸 문자열을 지정합니다.

writeFile

바이너리 파일 생성 및 내용 작성

1 2
static fs.writeFile(String fname, Buffer data) async;

호출 매개변수:

  • fname: 문자열, 파일 이름 지정
  • data: Buffer, 쓸 바이너리 데이터 지정

appendFile

바이너리 파일 생성 및 내용 작성

1 2
static fs.appendFile(String fname, Buffer data) async;

호출 매개변수:

  • fname: 문자열, 파일 이름 지정
  • data: Buffer, 쓸 바이너리 데이터 지정

setZipFS

설정 zip 가상 파일 매핑

1 2
static fs.setZipFS(String fname, Buffer data);

호출 매개변수:

  • fname: 문자열, 매핑 경로 지정
  • data: Buffer, 매핑된 지정 zip 파일 데이터

clearZipFS

분명한 zip 가상 파일 매핑

1
static fs.clearZipFS(String fname = "");

호출 매개변수:

  • fname: 문자열, 매핑 경로 지정, 기본적으로 모든 캐시 지우기

watch

파일을 관찰하고 해당 감시자 객체를 반환합니다.

1
static FSWatcher fs.watch(String fname);

호출 매개변수:

  • fname: 문자열, 관찰할 파일 객체 지정

반환 결과:


파일을 관찰하고 해당 감시자 객체를 반환합니다.

1 2
static FSWatcher fs.watch(String fname, Function callback);

호출 매개변수:

  • fname: 문자열, 관찰할 파일 객체 지정
  • callback: 함수, (evtType: 'change' | 'rename', filename: string) => any파일 객체 변경 시 처리 콜백

반환 결과:


파일을 관찰하고 해당 감시자 객체를 반환합니다.

1 2
static FSWatcher fs.watch(String fname, Object options);

호출 매개변수:

  • fname: 문자열, 관찰할 파일 객체 지정
  • options: 개체, 관찰 옵션

반환 결과:

지원되는 옵션은 다음과 같습니다.

1 2 3 4 5
{ "persistent": true, // {boolean} default: true 是否只要目标文件还在被观察, 进程就不退出 "recursive": false, // {boolean} default: false 对于 fname 为文件夹的情况, 是否递归地观察其下所有的子目录 "encoding": "utf8", // {enum} default: 'utf8' 指定解析传入的 fname 的字符编码 }

파일을 관찰하고 해당 감시자 객체를 반환합니다.

1 2 3
static FSWatcher fs.watch(String fname, Object options, Function callback);

호출 매개변수:

  • fname: 문자열, 관찰할 파일 객체 지정
  • options: 개체, 관찰 옵션
  • callback: 함수, (evtType: 'change' | 'rename', filename: string) => any파일 객체 변경 시 처리 콜백

반환 결과:

지원되는 옵션은 다음과 같습니다.

1 2 3 4 5
{ "persistent": true, // {boolean} default: true 是否只要目标文件还在被观察, 进程就不退出 "recursive": false, // {boolean} default: false 对于 fname 为文件夹的情况, 是否递归地观察其下所有的子目录 "encoding": "utf8", // {enum} default: 'utf8' 指定解析传入的 fname 的字符编码 }

watchFile

파일을 관찰하고 해당하는 반환 StatsWatcher 물체

1 2
static StatsWatcher fs.watchFile(String fname, Function callback);

호출 매개변수:

  • fname: 문자열, 관찰할 파일 객체 지정
  • callback: 함수, (curStats: Stats, prevStats: Stats) => any파일 객체의 통계가 변경될 때 처리 콜백

반환 결과:


파일을 관찰하고 해당하는 반환 StatsWatcher 물체

1 2 3
static StatsWatcher fs.watchFile(String fname, Object options, Function callback);

호출 매개변수:

  • fname: 문자열, 관찰할 파일 객체 지정
  • options: 개체, 관찰 옵션
  • callback: 함수, (curStats: Stats, prevStats: Stats) => any파일 객체의 통계가 변경될 때 처리 콜백

반환 결과:

지원되는 옵션은 다음과 같습니다.

1 2 3 4 5
{ "persistent": true, // {boolean} default: true 是否只要目标文件还在被观察, 进程就不退出 "recursive": false, // {boolean} default: false 对于 fname 为文件夹的情况, 是否递归地观察其下所有的子目录 "encoding": "utf8", // {enum} default: 'utf8' 指定解析传入的 fname 的字符编码 }

unwatchFile

fname의 관찰에서 StatsWatcher 콜백에서 관찰된 모든 이벤트 제거

1
static fs.unwatchFile(String fname);

호출 매개변수:

  • fname: 문자열, 관찰할 파일 객체 지정

반환 결과:


fname의 관찰에서 StatsWatcher관찰된 이벤트 콜백 제거 callback콜백

1 2
static fs.unwatchFile(String fname, Function callback);

호출 매개변수:

  • fname: 문자열, 관찰할 파일 객체 지정
  • callback: 제거할 함수, 콜백

반환 결과:

콜백이 더 이상 없어도 StatsWatcher 관찰 이벤트 콜백에서 오류가 보고되지 않습니다.

일정한

SEEK_SET

탐색 모드 상수, 절대 위치로 이동

1
const fs.SEEK_SET = 0;

SEEK_CUR

탐색 모드 상수, 현재 위치의 상대 위치로 이동

1
const fs.SEEK_CUR = 1;

SEEK_END

탐색 모드 상수, 파일 끝의 상대 위치로 이동

1
const fs.SEEK_END = 2;