Módulo módulo básico

Módulo fs

Módulo de procesamento do sistema de ficheiros

Instrucións:

1
var fs = require('fs');

Algúns puntos a ter en conta:

  • Executa fs.watch(filename)devolucións dunha herdanzaEventEmitter Vixiante, admite "cambiar", "só cambiar", "renomear só" tres eventos
  • fs.watchFile(target)E fs.unwatchFile(target)aínda se pode usar por parellas
  • fs.watchFile(target) Devolverá un herdado de EventEmitter de StatsWatcherObxecto, chamada fs.unwatchFile(target)equivalente a chamada StatsWatcher.close().
  • Dende UV na implementación de Linux, fs.watchas recursiveopcións win32 / darwin son compatibles con estabilidade. Aínda podes tentar usalas só en Linux fs.watch('/[path](path.md)/to', { recursive: true }, handler), pero pode que handlero tempo de devolución de chamada sexa diferente das túas expectativas

Obxecto

constants

Obxecto constante do módulo fs

1
fs_constants fs.constants;

Función estática

exists

Consulte se existe o ficheiro ou directorio especificado

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

Parámetros de chamada:

  • path: Cadea, especifique o camiño a consultar

Resultado de volta:

  • Boolean, Devolve Verdadeiro para indicar que o ficheiro ou directorio existe

access

Consulte a autoridade do usuario para o ficheiro especificado

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

Parámetros de chamada:

  • path: Cadea, especifique o camiño a consultar
  • mode: En número enteiro, especifique os permisos de consulta, o predeterminado é se existe o ficheiro

Crea un ficheiro de ligazón dura, este método non é compatible con Windows

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

Parámetros de chamada:

  • oldPath: Cadea, ficheiro fonte
  • newPath: Cadea, o ficheiro a crear

Elimina o ficheiro especificado

1
static fs.unlink(String path) async;

Parámetros de chamada:

  • path: Cadea, especifica o camiño a eliminar

mkdir

Crea un directorio

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

Parámetros de chamada:

  • path: Cadea, especifique o nome do directorio que se vai crear
  • mode: Enteiro, especifique os permisos do ficheiro, Windows ignora este parámetro, valor predeterminado: 0777

Crea un directorio

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

Parámetros de chamada:

  • path: Cadea, especifique o nome do directorio que se vai crear
  • opt: Obxecto, especifica parámetros de creación

O parámetro de creación pode conter os seguintes valores:

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

rmdir

Elimina un directorio

1
static fs.rmdir(String path) async;

Parámetros de chamada:

  • path: Cadea, especifique o nome do directorio que se vai eliminar

rename

Cambia o nome dun ficheiro

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

Parámetros de chamada:

  • from: Cadea, especifique o ficheiro renomeado
  • to: Cadea, especifique o novo nome do ficheiro que se vai modificar

copyFile

Copia src a dest. Por defecto, se xa existe dest, sobrescribirase.

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

Parámetros de chamada:

  • from: Cadea, especifique o nome do ficheiro fonte que se vai copiar
  • to: Cadea, especifique o nome do ficheiro de destino que se vai copiar
  • mode: Enteiro, especifique o modificador da operación de copia, o valor predeterminado é 0

O modo é un enteiro opcional que especifica o comportamento da operación de copia. Podes crear unha máscara composta por O ou bit a bit de dous ou máis valores (comofs.constants.COPYFILE_EXCL | fs.constants.COPYFILE_FICLONE).

  • fs.constants.COPYFILE_EXCL-Se xa existe dest, a operación de copia fallará.
  • fs.constants.COPYFILE_FICLONE-A operación de copia tentará crear unha ligazón de copia en escritura. Se a plataforma non admite a copia en escritura, úsase un mecanismo de copia de seguridade.
  • fs.constants.COPYFILE_FICLONE_FORCE-A operación de copia tentará crear unha ligazón de copia en escritura. Se a plataforma non admite a copia en escritura, a operación de copia fallará.

chmod

Estableza o permiso de acceso ao ficheiro especificado, Windows non admite este método

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

Parámetros de chamada:

  • path: Cadea, especifique o ficheiro de operación
  • mode: Enteiro, especifique a autoridade de acceso definida

lchmod

Estableza o permiso de acceso ao ficheiro especificado. Se o ficheiro é unha ligazón suave, o permiso ao ficheiro non se cambiará. Só está dispoñible en plataformas da serie macOS e BSD.

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

Parámetros de chamada:

  • path: Cadea, especifique o ficheiro de operación
  • mode: Enteiro, especifique a autoridade de acceso definida

chown

Defina o propietario do ficheiro especificado, Windows non admite este método

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

Parámetros de chamada:

  • path: Cadea, ficheiro para especificar a configuración
  • uid: Enteiro, o ID de usuario do propietario do ficheiro
  • gid: Enteiro, identificador do grupo propietario do ficheiro

lchown

Define o propietario do ficheiro especificado. Se o ficheiro especificado é unha ligazón suave, o propietario do ficheiro apuntado non se cambiará. Windows non admite este método

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

Parámetros de chamada:

  • path: Cadea, ficheiro para especificar a configuración
  • uid: Enteiro, o ID de usuario do propietario do ficheiro
  • gid: Enteiro, identificador do grupo propietario do ficheiro

stat

Consulte a información básica do ficheiro especificado

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

Parámetros de chamada:

  • path: Cadea, especifique o ficheiro que se vai consultar

Resultado de volta:

  • Stat, Devolve a información básica do ficheiro

lstat

Consulte a información básica do ficheiro especificado. A diferenza de stat é que candopathCando se trata dunha ligazón suave, devolverase a información da ligazón suave no canto da información do ficheiro apuntado

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

Parámetros de chamada:

  • path: Cadea, especifique o ficheiro que se vai consultar

Resultado de volta:

  • Stat, Devolve a información básica do ficheiro

Lea o ficheiro de conexión suave especificado, este método non é compatible con Windows

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

Parámetros de chamada:

  • path: Cadea, especifique o ficheiro de conexión suave que se vai ler

Resultado de volta:

  • String, Devolve o nome do ficheiro que apunta a ligazón suave

realpath

Devolve o camiño absoluto do camiño especificado, se o camiño especificado contén un camiño relativo, tamén se expandirá

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

Parámetros de chamada:

  • path: Cadea, especifica o camiño a ler

Resultado de volta:

  • String, Devolve o camiño absoluto procesado

Crear un ficheiro de conexión suave

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

Parámetros de chamada:

  • target: Cadea, o ficheiro de destino, pode ser un ficheiro, un directorio ou un camiño que non existe
  • linkpath: Cadea, o ficheiro de ligazón suave que se vai crear
  • type: Cadea, o tipo de conexión suave creada, os tipos opcionais son "ficheiro", "dir", "unión", o predeterminado é "ficheiro", este parámetro só é válido en Windows, cando é "unión", o destino crearase O camiño de enlace de ruta debe ser un camiño absoluto e o destino converterase automaticamente nun camiño absoluto.

truncate

Modifique o tamaño do ficheiro, se a lonxitude especificada é maior que o tamaño do ficheiro de orixe, éncheno con '\ 0', se non, perderase máis contido do ficheiro

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

Parámetros de chamada:

  • path: Cadea, especifique a ruta do ficheiro modificado
  • len: Enteiro, especifique o tamaño do ficheiro modificado

read

De acordo co descriptor do ficheiro, lea o contido do ficheiro

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

Parámetros de chamada:

  • fd: Entero, descriptor de ficheiros
  • buffer: Buffer, Le o resultado escrito Buffer Obxecto
  • offset: Enteiro, Buffer Offset de escritura, o valor predeterminado é 0
  • length: Enteiro, o número de bytes lidos no ficheiro, o predeterminado é 0
  • position: Enteiro, a posición de lectura do ficheiro, o predeterminado é a posición actual do ficheiro

Resultado de volta:

  • Integer, O número de bytes lidos realmente

fchmod

Segundo o descriptor de ficheiro, o modo de ficheiro cambia. Só válido nos sistemas POSIX.

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

Parámetros de chamada:

  • fd: Entero, descriptor de ficheiros
  • mode: Enteiro, modo de ficheiro

fchown

Segundo o descriptor do ficheiro, o propietario cambia. Só válido nos sistemas POSIX.

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

Parámetros de chamada:

  • fd: Entero, descriptor de ficheiros
  • uid: Enteiro, identificador de usuario
  • gid: Enteiro, id do grupo

fdatasync

Segundo o descriptor do ficheiro, sincroniza os datos co disco

1
static fs.fdatasync(Integer fd) async;

Parámetros de chamada:

  • fd: Entero, descriptor de ficheiros

fsync

Segundo o descriptor do ficheiro, sincroniza os datos co disco

1
static fs.fsync(Integer fd) async;

Parámetros de chamada:

  • fd: Entero, descriptor de ficheiros

readdir

Lea a información do ficheiro do directorio especificado

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

Parámetros de chamada:

  • path: Cadea, especifique o directorio que se vai consultar

Resultado de volta:

  • NArray, Devolve a matriz de información do ficheiro do directorio

openFile

Abra o ficheiro para ler, escribir ou ler e escribir ao mesmo tempo

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

Parámetros de chamada:

  • fname: Cadea, especifique o nome do ficheiro
  • flags: Cadea, especifique o método de apertura do ficheiro, o predeterminado é "r", de só lectura

Resultado de volta:

Os métodos admitidos de marcadores de parámetros son os seguintes:

  • 'r' é de só lectura, producirase un erro se o ficheiro non existe.
  • modo de lectura e escritura 'r +', producirase un erro se o ficheiro non existe.
  • 'w' só está escrito. Se o ficheiro non existe, crearase automaticamente e, se existe, borrarase.
  • modo de lectura e escritura 'w +', o ficheiro crearase automaticamente se non existe.
  • 'a' só escribe o método de engadir, o ficheiro crearase automaticamente se non existe.
  • "un +" método de engadir lectura-escritura, o ficheiro crearase automaticamente se non existe.

open

Abrir o descriptor do ficheiro

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

Parámetros de chamada:

  • fname: Cadea, especifique o nome do ficheiro
  • flags: Cadea, especifique o método de apertura do ficheiro, o predeterminado é "r", de só lectura
  • mode: O número enteiro, ao crear un ficheiro, especifique o modo do ficheiro, por defecto 0666

Resultado de volta:

  • Integer, Devolve o descriptor de ficheiro aberto

Os métodos admitidos de marcadores de parámetros son os seguintes:

  • 'r' é de só lectura, producirase un erro se o ficheiro non existe.
  • modo de lectura e escritura 'r +', producirase un erro se o ficheiro non existe.
  • 'w' só está escrito. Se o ficheiro non existe, crearase automaticamente e, se existe, borrarase.
  • modo de lectura e escritura 'w +', o ficheiro crearase automaticamente se non existe.
  • 'a' só escribe o método de engadir, o ficheiro crearase automaticamente se non existe.
  • "un +" método de engadir lectura-escritura, o ficheiro crearase automaticamente se non existe.

close

Pechar o descriptor do ficheiro

1
static fs.close(Integer fd) async;

Parámetros de chamada:

  • fd: Entero, descriptor de ficheiros

openTextStream

Abra un ficheiro de texto para ler, escribir ou ler e escribir ao mesmo tempo

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

Parámetros de chamada:

  • fname: Cadea, especifique o nome do ficheiro
  • flags: Cadea, especifique o método de apertura do ficheiro, o predeterminado é "r", de só lectura

Resultado de volta:

Os métodos admitidos de marcadores de parámetros son os seguintes:

  • 'r' é de só lectura, producirase un erro se o ficheiro non existe.
  • modo de lectura e escritura 'r +', producirase un erro se o ficheiro non existe.
  • 'w' só está escrito. Se o ficheiro non existe, crearase automaticamente e, se existe, borrarase.
  • modo de lectura e escritura 'w +', o ficheiro crearase automaticamente se non existe.
  • 'a' só escribe o método de engadir, o ficheiro crearase automaticamente se non existe.
  • "un +" método de engadir lectura-escritura, o ficheiro crearase automaticamente se non existe.

readTextFile

Abra o ficheiro de texto e lea o contido

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

Parámetros de chamada:

  • fname: Cadea, especifique o nome do ficheiro

Resultado de volta:

  • String, Devolve o contido do texto do ficheiro

readFile

Abra o ficheiro binario e lea o contido

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

Parámetros de chamada:

  • fname: Cadea, especifique o nome do ficheiro
  • encoding: Cadea, especifique o método de descodificación, o predeterminado non é descodificar

Resultado de volta:

  • Variant, Devolve o contido do texto do ficheiro

readLines

Abre o ficheiro e le un grupo de liñas de texto nunha matriz. O final da liña identifícase en función da configuración do atributo EOL. Por defecto, posix: "\ n"; windows: "\ r \ n"

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

Parámetros de chamada:

  • fname: Cadea, especifique o nome do ficheiro
  • maxlines: En número enteiro, especifique o número máximo de liñas lidas esta vez, lea todas as liñas de texto por defecto

Resultado de volta:

  • Array, Devolve a matriz de liñas de texto lidas, se non hai datos para ler ou se interrompe a conexión, unha matriz baleira

writeTextFile

Crea un ficheiro de texto e escribe contido

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

Parámetros de chamada:

  • fname: Cadea, especifique o nome do ficheiro
  • txt: Cadea, especifique a cadea que se vai escribir

writeFile

Crea un ficheiro binario e escribe contido

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

Parámetros de chamada:

  • fname: Cadea, especifique o nome do ficheiro
  • data: Buffer, Especifique os datos binarios que se van escribir

appendFile

Crea un ficheiro binario e escribe contido

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

Parámetros de chamada:

  • fname: Cadea, especifique o nome do ficheiro
  • data: Buffer, Especifique os datos binarios que se van escribir

setZipFS

Montar zip Asignación de ficheiros virtuais

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

Parámetros de chamada:

  • fname: Cadea, especifica o camiño de mapeo
  • data: Buffer, Especifique o mapeado zip Datos do ficheiro

clearZipFS

Claro zip Asignación de ficheiros virtuais

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

Parámetros de chamada:

  • fname: Cadea, especifique a ruta de mapeo, borre todas as cachés por defecto

watch

Observe un ficheiro e devolva o obxecto observador correspondente

1
static FSWatcher fs.watch(String fname);

Parámetros de chamada:

  • fname: Cadea, especifica o obxecto de arquivo a observar

Resultado de volta:


Observe un ficheiro e devolva o obxecto observador correspondente

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

Parámetros de chamada:

  • fname: Cadea, especifica o obxecto de arquivo a observar
  • callback: Función, (evtType: 'change' | 'rename', filename: string) => anyo procesamento de devolución de chamada cando o obxecto do ficheiro cambia

Resultado de volta:


Observe un ficheiro e devolva o obxecto observador correspondente

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

Parámetros de chamada:

  • fname: Cadea, especifica o obxecto de arquivo a observar
  • options: Obxecto, opcións de observación

Resultado de volta:

As opcións compatibles son as seguintes:

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

Observe un ficheiro e devolva o obxecto observador correspondente

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

Parámetros de chamada:

  • fname: Cadea, especifica o obxecto de arquivo a observar
  • options: Obxecto, opcións de observación
  • callback: Función, (evtType: 'change' | 'rename', filename: string) => anyo procesamento de devolución de chamada cando o obxecto do ficheiro cambia

Resultado de volta:

As opcións compatibles son as seguintes:

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

watchFile

Observe un ficheiro e devolva o correspondente StatsWatcher Obxecto

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

Parámetros de chamada:

  • fname: Cadea, especifica o obxecto de arquivo a observar
  • callback: Función, (curStats: Stats, prevStats: Stats) => anya devolución de chamada de procesamento cando cambian as estatísticas do obxecto do ficheiro

Resultado de volta:


Observe un ficheiro e devolva o correspondente StatsWatcher Obxecto

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

Parámetros de chamada:

  • fname: Cadea, especifica o obxecto de arquivo a observar
  • options: Obxecto, opcións de observación
  • callback: Función, (curStats: Stats, prevStats: Stats) => anya devolución de chamada de procesamento cando cambian as estatísticas do obxecto do ficheiro

Resultado de volta:

As opcións compatibles son as seguintes:

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

unwatchFile

A partir da observación de fname StatsWatcher Elimina todos os eventos observados na devolución de chamada

1
static fs.unwatchFile(String fname);

Parámetros de chamada:

  • fname: Cadea, especifica o obxecto de arquivo a observar

Resultado de volta:


A partir da observación de fname StatsWatcherA devolución de chamada do evento observado eliminou a callbackdevolución de chamada

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

Parámetros de chamada:

  • fname: Cadea, especifica o obxecto de arquivo a observar
  • callback: Función, eliminación de devolución de chamada

Resultado de volta:

Mesmo se a devolución de chamada xa non é StatsWatcher Non se informará de ningún erro na devolución de chamada do evento de observación

constante

SEEK_SET

modo de busca constante, move á posición absoluta

1
const fs.SEEK_SET = 0;

SEEK_CUR

A constante do modo de busca, móvese á posición relativa da posición actual

1
const fs.SEEK_CUR = 1;

SEEK_END

modo de busca constante, móvese á posición relativa do final do ficheiro

1
const fs.SEEK_END = 2;