fs.io 提供基于Promise(Q Promise)的文件、目录操作类库
api参考.net Framework System.IO命名空间下的
http://msdn.microsoft.com/en-us/library/System.IO(v=vs.110).aspx
File
FileInfo
和Directory
类
var file = require('fs.io').file;
var dict = require('fs.io').directory;
file.copy(from,to)
.done(function(){})
.fail(function(){});
...
src 源路径
dest 目标路径
isOverride 是否覆盖目标文件
** 该api,使用ncp
库进行复制 **
path 文件路径
path 文件路径
promise在done函数从参数返回是否存在
file.isExists("d:/saa.txt").done(function(exists){
if(exists){
}
})
src 源路径 dest 目标路径
获取最后访问时间
获取文件最后修改时间
获取文件创建时间
注意 该函数返回值Stream.Readable对象
读取文件的所有内容
注意 该函数返回Stream.Wriable对象
path 文件路径 text 写入文件内容
往文件结尾写入文本,如果文件不存在,则创建文件
根据提供路径创建目录结构,路径中如果有任何目录不存在,则创建相应的目录
path 可为相对路径或绝对路径
相对路径则基于当前工作目录创建子目录
删除文件目录,删非空目录时,recursive为true
目录是否存在,在resolve函数中,返回目录是否存在
移动源目录到指定路径, overrid 可选,为true时覆盖目标路径内容
该函数封装fs-extra
类库的move
函数
指定路径是否为目录
pattern 目录搜索模式,支持 glob
搜索方式,可选项,默认返回根目录下的第一级子目录,即 pattern = "*"
directory.getDirectories("tmp/","**/*");//返回所有子目录
directory.getDirectories("tmp/","**/abc*");//返回abc开头的所有子目录
获取文件夹下所有文件路径,返回所有符合条件的文件地址
pattern 文件搜索模式,默认为 **/*.*
,即返回所有文件
directory.getFiles("path");//返回所有文件
directory.getFiles("path","*.js");//返回根目录的js文件
directory.getFiles("path","**/*.js");//返会目录下的所有js文件
FileInfo 包含以下属性
fullName
文件路径name
文件名extension
文件扩展名directoryName
目录名isStatReady
stats通过异步获取,此属性标示stats是否请求完毕createTime
文件创建时间lastAccessTime
文件最后访问时间lastModifyTime
文件修改时间length
文件大小
类函数
isExists()
文件是否存在copyTo(destPath)
文件拷贝moveTo(destPath)
文件转移openRead()
以Readable流形式打开openText()
读取文件内容openWrite()
以Writeable流形式打开writeAllText(text)
写入文本appendText(text)
附加文本delete()
文件删除