Skip to content

file — 文件操作 ​

file 模块提供了文件系统操作功能,包括文件读写、目录操作、路径处理等。

引入方式 ​

javascript
var file = require("file")

读取文件 ​

Read — 读取文件内容 ​

javascript
var content = file.Read("./data/config.json")

ReadBytes — 读取文件字节数组 ​

javascript
var data = file.ReadBytes("./data/image.png")

ReadLines — 按行读取 ​

javascript
var lines = file.ReadLines("./data/log.txt")

Tail — 读取最后 n 行 ​

javascript
var lastLines = file.Tail("./data/log.txt", 100)

写入文件 ​

Write — 写入文件 ​

javascript
file.Write("./data/output.txt", "Hello World")

WriteBytes — 写入字节数组 ​

javascript
file.WriteBytes("./data/binary.dat", bytes)

Append — 追加内容 ​

javascript
file.Append("./data/log.txt", "新日志行\n")

文件操作 ​

javascript
file.Copy("./src.txt", "./dst.txt")       // 复制
file.Move("./old.txt", "./new.txt")       // 移动
file.Rename("./old.txt", "new.txt")       // 重命名
file.Delete("./temp.txt")                 // 删除文件
file.DeleteDir("./temp")                  // 递归删除目录
file.Mkdir("./data/newdir")              // 创建目录
file.MkdirAll("./data/a/b/c")            // 递归创建目录
file.Touch("./data/newfile.txt")         // 创建空文件

文件查询 ​

javascript
file.Exist("./data/config.json")          // 是否存在
file.IsFile("./data/config.json")         // 是否为文件
file.IsDir("./data")                      // 是否为目录
file.Size("./data/file.txt")              // 文件大小(字节)
file.ModTime("./data/file.txt")           // 修改时间(Unix 时间戳)
file.MD5("./data/file.txt")               // 文件 MD5
file.Ext("./data/file.txt")               // 扩展名 ".txt"
file.Name("./data/file.txt")              // 文件名 "file.txt"

目录操作 ​

javascript
file.Ls("./data")                         // 列出目录内容
file.ListFiles("./data")                  // 列出文件详情
file.Walk("./data")                       // 遍历目录树
file.Glob("./data/*.json")                // 通配符匹配

路径操作 ​

javascript
file.Join("./data", "sub", "file.txt")    // 连接路径
file.AbsPath("./data/file.txt")           // 绝对路径
file.CleanPath("./data/../file.txt")      // 清理路径
file.Dir("./data/sub/file.txt")           // 目录路径 "./data/sub"
file.Parent("./data/sub")                 // 父目录 "./data"

完整示例 ​

javascript
var file = require("file")
var log = require("log")

// 读取配置文件
if (file.Exist("./conf.json")) {
    var content = file.Read("./conf.json")
    var config = JSON.parse(content)
}

// 写入日志
file.Append("./logs/app.log", now() + " - 操作记录\n")

// 遍历目录
var files = file.Walk("./data")
for (var i = 0; i < files.length; i++) {
    if (file.IsFile(files[i])) {
        log.Info("文件: " + files[i] + " 大小: " + file.Size(files[i]))
    }
}

// 复制文件
file.Copy("./template.html", "./output/report.html")

// 检查文件是否存在
if (!file.Exist("./data/cache")) {
    file.MkdirAll("./data/cache")
}

版权所有.