Módulo fs
Módulo de procesamento do sistema de ficheiros
Instrucións:
1var 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)
Efs.unwatchFile(target)
aínda se pode usar por parellasfs.watchFile(target)
Devolverá un herdado de EventEmitter de StatsWatcherObxecto, chamadafs.unwatchFile(target)
equivalente a chamadaStatsWatcher.close()
.- Dende UV na implementación de Linux,
fs.watch
asrecursive
opcións win32 / darwin son compatibles con estabilidade. Aínda podes tentar usalas só en Linuxfs.watch('/[path](path.md)/to', { recursive: true }, handler)
, pero pode quehandler
o tempo de devolución de chamada sexa diferente das túas expectativas
Obxecto
constants
Obxecto constante do módulo fs
1fs_constants fs.constants;
Función estática
exists
Consulte se existe o ficheiro ou directorio especificado
1static 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
2static 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
link
Crea un ficheiro de ligazón dura, este método non é compatible con Windows
1
2static fs.link(String oldPath,
String newPath) async;
Parámetros de chamada:
- oldPath: Cadea, ficheiro fonte
- newPath: Cadea, o ficheiro a crear
unlink
Elimina o ficheiro especificado
1static fs.unlink(String path) async;
Parámetros de chamada:
- path: Cadea, especifica o camiño a eliminar
mkdir
Crea un directorio
1
2static 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
2static 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
1static 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
2static 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
3static 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. Pode crear unha máscara consistente no OR de bits a 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
Establece o permiso de acceso ao ficheiro especificado, Windows non admite este método
1
2static 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
2static 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
3static fs.chown(String path,
Integer uid,
Integer gid) async;
Parámetros de chamada:
- path: Cadea, ficheiro para especificar a configuración
- uid: Enteiro, identificador 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
3static fs.lchown(String path,
Integer uid,
Integer gid) async;
Parámetros de chamada:
- path: Cadea, ficheiro para especificar a configuración
- uid: Enteiro, identificador de usuario do propietario do ficheiro
- gid: Enteiro, identificador do grupo propietario do ficheiro
stat
Consulte a información básica do ficheiro especificado
1static 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
1static 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
readlink
Lea o ficheiro de conexión suave especificado, este método non é compatible con Windows
1static 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á
1static 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
symlink
Crear un ficheiro de conexión suave
1
2
3static fs.symlink(String target,
String linkpath,
String type = "file") async;
Parámetros de chamada:
- target: Cadea, o ficheiro de destino, que 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 a un 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
2static fs.truncate(String path,
Integer len) async;
Parámetros de chamada:
- path: Cadea, especifica a ruta do ficheiro modificado
- len: Enteiro, especifica o tamaño do ficheiro modificado
read
De acordo co descriptor do ficheiro, lea o contido do ficheiro
1
2
3
4
5static 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
2static 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
3static 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
1static 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
1static fs.fsync(Integer fd) async;
Parámetros de chamada:
- fd: Entero, descriptor de ficheiros
readdir
Lea a información do ficheiro do directorio especificado
1static 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
2static 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:
- SeekableStream, Devolve o obxecto 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.
- "a +" método de engadir lectura-escritura, o ficheiro crearase automaticamente se non existe.
open
Abrir o descriptor do ficheiro
1
2
3static 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: En número enteiro, ao crear un ficheiro, especifique o modo do ficheiro, o predeterminado é 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.
- "a +" método de engadir lectura-escritura, o ficheiro crearase automaticamente se non existe.
close
Pechar o descriptor do ficheiro
1static 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
2static 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:
- BufferedStream, Devolve o obxecto 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.
- "a +" método de engadir lectura-escritura, o ficheiro crearase automaticamente se non existe.
readTextFile
Abra o ficheiro de texto e lea o contido
1static String fs.readTextFile(String fname) async;
Parámetros de chamada:
- fname: Cadea, especifique o nome do ficheiro
Resultado de volta:
- String, Devolve o contido de texto do ficheiro
readFile
Abra o ficheiro binario e lea o contido
1
2static 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 decodificación, o predeterminado non é descodificar
Resultado de volta:
- Variant, Devolve o contido de 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
2static 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 a conexión está interrompida, matriz baleira
writeTextFile
Crea un ficheiro de texto e escribe contido
1
2static 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
2static 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
2static 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
2static fs.setZipFS(String fname,
Buffer data);
Parámetros de chamada:
- fname: Cadea, especifica o camiño de mapeado
- data: Buffer, Especifique o mapeado zip Datos do ficheiro
clearZipFS
Claro zip Asignación de ficheiros virtuais
1static 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 vixiante correspondente
1static 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 vixiante correspondente
1
2static 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) => any
a devolución de chamada de procesamento cando o obxecto do ficheiro cambia
Resultado de volta:
Observe un ficheiro e devolva o obxecto vixiante correspondente
1
2static 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 vixiante correspondente
1
2
3static 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) => any
a devolución de chamada de procesamento 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
2static 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) => any
a devolución de chamada de procesamento cando cambian as estatísticas do obxecto do ficheiro
Resultado de volta:
- StatsWatcher, StatsWatcher Obxecto
Observe un ficheiro e devolva o correspondente StatsWatcher Obxecto
1
2
3static 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) => any
a devolución de chamada de procesamento cando cambian as estatísticas do obxecto do ficheiro
Resultado de volta:
- StatsWatcher, StatsWatcher Obxecto
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
1static fs.unwatchFile(String fname);
Parámetros de chamada:
- fname: Cadea, especifica o obxecto de arquivo a observar
Resultado de volta:
- StatsWatcher Obxecto
A partir da observación de fname StatsWatcherA devolución de chamada do evento observado eliminou a callback
devolución de chamada
1
2static fs.unwatchFile(String fname,
Function callback);
Parámetros de chamada:
- fname: Cadea, especifica o obxecto de arquivo a observar
- callback: Función, devolución de chamada que se eliminará
Resultado de volta:
- StatsWatcher Obxecto
Aínda que a devolución de chamada xa non sexa 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
1const fs.SEEK_SET = 0;
SEEK_CUR
A constante do modo de busca, móvese á posición relativa da posición actual
1const fs.SEEK_CUR = 1;
SEEK_END
modo de busca constante, móvese á posición relativa do final do ficheiro
1const fs.SEEK_END = 2;