ngui/fs
這里提供的是nodejs文件的擴展函數(shù)
創(chuàng)建與設(shè)置文件的默認mode
值,這與文件的權(quán)限相關(guān),這是一個int
整數(shù)類型值
Enum: FileType
文件的類型,枚舉類型都為int
整數(shù)
Object: Dirent
讀取目錄時返回的結(jié)構(gòu)類型, 這是個Object
類型描述并沒有實際存在的構(gòu)造函數(shù)
String
} 文件名稱String
} 文件路徑FileType
} 文件類型枚舉值 FileType
通過id
強制中止運行中的異步任務
如果傳入無意義的id
或id
所屬的任務已經(jīng)完成,不做任何處理
id
{uint
}Example:
var id0 = fs.chmodR(mypath, 755);
var id1 = fs.chownR(mypath, 501, 501);
var id2 = fs.cp(mypath, newpath);
// force abort task
fs.abort(id0);
fs.abort(id1);
fs.abort(id2);
遞歸設(shè)置文件或目錄mode
屬性,并返回中止id
,可通過這個id
強制中止任務
Callback: cb()
Example:
// `mypath`為文件路徑,可以為文件也可以為目錄
fs.chmodR(mypath, 0755, function(err){
if (err)
console.log('Fail');
else
console.log('Success');
});
var id = fs.chmodR(mydir, 0775);
fs.abort(id);
同步設(shè)置文件的mode屬性,設(shè)置成功返回true
遞歸chmodSyncR()
path
{String
}[mode=DEFAULT_MODE]
{uint
} DEFAULT_MODE
bool
}Example:
// Prints: true
console.log(fs.chmodSyncR(mypath, 0755));
異步遞歸設(shè)置文件或目錄owner
與group
屬性。并返回中止id
,可通過這個id
強制中止任務
Callback:cb()
path
{String
}owner
{uint
}group
{uint
}[cb]
{Function
}uint
} return abort id
Example:
var id = chownR(mypath, 501, 501, (err)=>{ });
fs.abort(id); // force abort task
同步設(shè)置文件owner與group屬性。成功返回true
遞歸chownSyncR()
創(chuàng)建目錄,這個方法會依次創(chuàng)建目錄樹,目錄存在也不會拋出異常
Callback:cb()
path
{String
}[mode=DEFAULT_MODE]
{uint
} DEFAULT_MODE
[cb]
{Function
}Example:
fs.mkdirP(mypath, function(err){
if (err) {
/*Success*/
} else {
/*Fail*/
}
});
path
{String
}[mode=DEFAULT_MODE]
{uint
} DEFAULT_MODE
bool
} Success return true
遞歸刪除文件與目錄,并返回一個中止id,如果不成功會拋出異常
使用這個id可以強制中止任務 abort(id)
Callback: cb()
Example:
var id = fs.removeR(mypath, function(err) {
if (err) {
/*Success*/
} else {
/*Fail*/
}
});
// 通過id可中止刪除任務
fs.abort(id);
同步遞歸刪除目錄或文件,在javascript中謹慎使用這個方法,有可能會造成線程長時間被柱塞
拷貝文件,并返回一個中止id,如果不成功會拋出異常
使用這個id可以強制中止拷貝任務 abort(id)
遞歸拷貝文件與目錄copyR()
這個方法與copy()
區(qū)別在于,copy()
只能拷貝單個文件
Callback: cb()
Example:
var id = fs.copy(source, target, function(err) {
if (err) {
/*Success*/
} else {
/*Fail*/
}
});
// 通過id可中止任務
fs.abort(id);
同步拷貝文件,在javascript中謹慎使用這個方法,有可能會造成線程長時間被柱塞
遞歸拷貝文件與目錄copySyncR()
讀取目錄列表信息,失敗拋出異常,成功返回Dirent
的Array
Callback: cb(dirents)
Example:
// Prints:
// {
// name: "cp.txt",
// pathname: "file:///var/mobile/Containers/Data/Application/64DAC3FC-A4FD-4274-A2E7-B834EE4930B4/Documents/test/cp.txt",
// type: 1
// }
fs.readdir(mydir, function(err, dirents) {
if (err) {
/*Fail*/
} else {
for (var dirent of dirents) {
// TODO...
console.log(dirent);
}
}
console.log(dirent);
});
測試是否為一個文件,成功返回bool
類型值
Callback: cb(ok)
(ok:bool
)
測試是否為一個目錄,成功返回bool
類型值
Callback: cb(ok)
(ok:bool
)
更多建議: