模块 fs

文件系统处理模块

使用方法:

var fs = require('fs');

静态函数

exists

查询指定的文件或目录是否存在

static Boolean fs.exists(String path) async;

调用参数:

返回结果:


access

查询用户对指定的文件的权限

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

调用参数:


创建硬链接文件, windows 下不支持此方法

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

调用参数:


删除指定的文件

static fs.unlink(String path) async;

调用参数:


mkdir

创建一个目录

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

调用参数:


rmdir

删除一个目录

static fs.rmdir(String path) async;

调用参数:


rename

重新命名一个文件

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

调用参数:


copy

复制一个文件

static fs.copy(String from,
    String to) async;

调用参数:


chmod

设置指定文件的访问权限,Windows 不支持此方法

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

调用参数:


lchmod

设置指定文件的访问权限,若文件是软连接则不改变指向文件的权限,只在macOS、BSD 系列平台上可用

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

调用参数:


chown

设置指定文件的拥有者,Windows 不支持此方法

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

调用参数:


lchown

设置指定文件的拥有者,如果指定的文件是软连接则不会改变其指向文件的拥有者,Windows 不支持此方法

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

调用参数:


stat

查询指定文件的基础信息

static Stat fs.stat(String path) async;

调用参数:

返回结果:


lstat

查询指定文件的基础信息, 和stat不同的是, 当path是一个软连接的时候,返回的将是这个软连接的信息而不是指向的文件的信息

static Stat fs.lstat(String path) async;

调用参数:

返回结果:


读取指定的软连接文件, windows 下不支持此方法

static String fs.readlink(String path) async;

调用参数:

返回结果:


realpath

返回指定路径的绝对路径,如果指定路径中包含相对路径也会被展开

static String fs.realpath(String path) async;

调用参数:

返回结果:


创建软连接文件

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

调用参数:


truncate

修改文件尺寸,如果指定的长度大于源文件大小则用'\0'填充,否则多于的文件内容将丢失

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

调用参数:


read

根据文件描述符,读取文件内容

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

调用参数:

返回结果:


fchmod

根据文件描述符,改变文件模式。只在 POSIX 系统有效。

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

调用参数:


fchown

根据文件描述符,改变所有者。只在 POSIX 系统有效。

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

调用参数:


fdatasync

根据文件描述符,同步数据到磁盘

static fs.fdatasync(Integer fd) async;

调用参数:


fsync

根据文件描述符,同步数据到磁盘

static fs.fsync(Integer fd) async;

调用参数:


readdir

读取指定目录的文件信息

static List fs.readdir(String path) async;

调用参数:

返回结果:


openFile

打开文件,用于读取,写入,或者同时读写

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

调用参数:

返回结果:

参数 flags 支持的方式如下:


open

打开文件描述符

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

调用参数:

返回结果:

参数 flags 支持的方式如下:


close

关闭文件描述符

static fs.close(Integer fd) async;

调用参数:


openTextStream

打开文本文件,用于读取,写入,或者同时读写

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

调用参数:

返回结果:

参数 flags 支持的方式如下:


readTextFile

打开文本文件,并读取内容

static String fs.readTextFile(String fname) async;

调用参数:

返回结果:


readFile

打开二进制文件,并读取内容

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

调用参数:

返回结果:


readLines

打开文件,以数组方式读取一组文本行,行结尾标识基于 EOL 属性的设置,缺省时,posix:"\n";windows:"\r\n"

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

调用参数:

返回结果:


writeTextFile

创建文本文件,并写入内容

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

调用参数:


writeFile

创建二进制文件,并写入内容

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

调用参数:


appendFile

创建二进制文件,并写入内容

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

调用参数:

静态属性

constants

Object, fs模块的常量对象

static readonly Object fs.constants;

常量

SEEK_SET

seek 方式常量,移动到绝对位置

const fs.SEEK_SET = 0;

SEEK_CUR

seek 方式常量,移动到当前位置的相对位置

const fs.SEEK_CUR = 1;

SEEK_END

seek 方式常量,移动到文件结尾的相对位置

const fs.SEEK_END = 2;