文件系统
readFile(object)
文件异步读取,批量读取接口
手Q版本:7.8.0
函数参数object属性:
属性名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
file | Array | 是 | 要读取的文件数组 |
success | Function | 否 | 接口调用成功回调 |
fail | Function | 否 | 接口调用失败回调 |
complete | Function | 否 | 接口调用完成回调 |
object.file 文件数组
属性名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
path | string | 是 | 文件路径 |
encoding | string | 否 | 编码格式 |
file.encodeing 取值
"binary"
object.success 回调函数
参数名 | 类型 | 其他 |
---|---|---|
obj | Array | 具体元素属性如下 |
obj 元素属性
参数名 | 类型 | 说明 |
---|---|---|
path | string | 路径 |
data | ArrayBuffer/string | 数据 |
errcode | number | 错误码 |
errmsg | string | 错误信息 |
object.fail 回调函数参数
参数名 | 类型 | 说明 |
---|---|---|
msg | string | 错误信息 |
errcode | number | 错误码 |
示例:
var files = [];
files.push({'path':'GameRes://config.json'});
files.push({'path':'GameRes://resource/img.png'});
BK.fileSystem.readFile({'file':files,
'success': function (res) {
for (var i = 0; i < res.length; i++) {
if (res[i].errcode == 0) {
var str = "异步加载文件 成功:" + res[i].path + " 文件大小:" + res[i].data.length;
BK.Script.log(1, 1, str);
}
else {
var str = "异步加载文件失败 :" + retObj[i].path;
BK.Script.log(1, 1, str);
}
}
},'fail':function(){
BK.Script.log(1, 1, "异步加载文件调用失败 ");
},'complete':function()
{
BK.Script.log(1, 1, "异步加载文件调用完成 ");
}
});
writeFile(Object)
异步写文件,批量写接口
手Q版本:7.8.0
函数参数Object属性:
属性名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
file | Array | 是 | 要写入的文件数组 |
success | Function | 否 | 接口调用成功回调 |
fail | Function | 否 | 接口调用失败回调 |
complete | Function | 否 | 接口调用完成回调 |
object.file 属性:
属性名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
path | string | 是 | 文件路径 |
data | ArrayBuffer | 是 | 编码格式 |
encoding | string | 否 | 编码格式 |
file.encodeing 取值
"binary"
object.success 回调函数
参数名 | 类型 | 其他 |
---|---|---|
obj | Array | 具体元素属性如下 |
obj 元素属性
参数名 | 类型 | 说明 |
---|---|---|
path | string | 路径 |
errcode | number | 错误码 |
errmsg | string | 错误信息 |
object.fail 回调函数
参数名 | 类型 | 说明 |
---|---|---|
msg | string | 错误信息 |
errcode | number | 错误码 |
示例:
var files = [];
files.push({'path':'GameRes://config.json','data':bkBuffer1});
files.push({'path':'GameRes://resource/img.png','data':bkBuffer2});
BK.fileSystem.writeFile({'file':files,
'success': function (res) {
BK.Script.log(0, 0, "write call back");
for (var i = 0; i < res.length; i++) {
if (res[i].errcode == 0) {
var str = "异步写文件 成功:" + res[i].path;
BK.Script.log(1, 1, str);
}
else {
var str = "异步写文件 失败:" + res[i].path;
BK.Script.log(1, 1, str);
}
}
},'fail':function(obj){
BK.Script.log(1, 1, "异步写文件调用失败 errcode:"+obj.errcode + ' msg:'+obj.msg);
},'complete':function()
{
BK.Script.log(1, 1, "异步写文件调用完成 ");
}
});
zip(Object)
批量异步压缩
手Q版本:7.8.0
参数Object属性:
属性名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
file | Array | 是 | 要压缩的文件或目录数组 |
success | Function | 否 | 接口调用成功回调 |
fail | Function | 否 | 接口调用失败回调 |
complete | Function | 否 | 接口调用完成回调 |
file 参数:
属性名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
path | string | 是 | 文件或目录 |
zipPath | string | 是 | 压缩生成文件路径 |
object.success 回调函数参数
参数名 | 类型 | 其他 |
---|---|---|
obj | Array | 具体属性如下 |
obj 元素属性
参数名 | 类型 | 说明 |
---|---|---|
path | string | 路径 |
zipPath | string | 压缩包路径 |
object.fail 回调函数参数
参数名 | 类型 | 说明 |
---|---|---|
msg | string | 错误信息 |
errcode | number | 错误码 |
示例:
var files = [];
files.push({"path": 'GameRes://config.json',"zipPath":"GameSandBox://ziptest_1.zip"});
files.push({"path": 'GameRes://resource/img.png',"zipPath":"GameSandBox://ziptest_2.zip"});
BK.fileSystem.zip({'file':files,
'success': function (res) {
for (var i = 0; i < res.length; i++) {
if (res[i].errcode == 0) {
var str = "zip 压缩成功:" + res[i].zipPath;
BK.Script.log(1, 1, str);
}
else {
var str = "zip 压缩失败:" + res[i].path;
BK.Script.log(1, 1, str);
}
}
},'fail':function(obj){
BK.Script.log(1, 1, "异步压缩调用失败 errcode:"+obj.errcode + ' msg:'+obj.msg);
},'complete':function()
{
BK.Script.log(1, 1, "异步压缩调用完成 ");
}
});
unzip(Object)
批量异步解压
手Q版本:7.8.0
函数参数Object属性
属性名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
file | Array | 是 | 要压缩的文件或目录数组 |
success | Function | 否 | 接口调用成功回调 |
fail | Function | 否 | 接口调用失败回调 |
complete | Function | 否 | 接口调用完成回调 |
object.file 参数:
属性名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
path | string | 是 | 解压后的路径 |
zipPath | string | 是 | 源zip文件路径 |
object.success 回调函数
参数名 | 类型 | 其他 |
---|---|---|
obj | Array | 具体属性如下 |
obj 元素属性
参数名 | 类型 | 说明 |
---|---|---|
path | string | 路径 |
zipPath | string | 压缩包路径 |
object.fail 回调函数
参数名 | 类型 | 说明 |
---|---|---|
msg | string | 错误信息 |
errcode | number | 错误码 |
示例:
var files = [];
files.push({"path": 'GameSandBox://unzipDir',"zipPath":"GameSandBox://ziptest_1.zip"});
files.push({"path": 'GameSandBox://unzipDir2',"zipPath":"GameSandBox://ziptest_2.zip"});
BK.fileSystem.unzip({'file':files,
'success': function (res) {
for (var i = 0; i < res.length; i++) {
if (res[i].errcode == 0) {
var str = "unzip 解压成功:" + res[i].zipPath;
BK.Script.log(1, 1, str);
}
else {
var str = "unzip 解压失败:" + res[i].zipPath;
BK.Script.log(1, 1, str);
}
}
},'fail':function(obj){
BK.Script.log(1, 1, "异步解压调用失败 errcode:"+obj.errcode + ' msg:'+obj.msg);
},'complete':function()
{
BK.Script.log(1, 1, "异步解压调用完成 ");
}
});
readFileSync(filePath)
同步读文件接口
手Q版本:7.8.0
参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
filePath | string | 是 | 文件路径 |
encoding | string | 否 | 编码格式 |
encodeing 取值
"binary","utf8","ascii","base64"
返回值:
类型 | 说明 |
---|---|
ArrayBuffer/string | 文件内容 |
示例:
var fileData = BK.fileSystem.readFileSync("GameSandBox://config.json");
writeFileSync(filePath,data)
同步写文件文件接口
手Q版本:7.8.0
参数:
参数名 | 类型 | 是否必填 | 说明 | |
---|---|---|---|---|
filePath | string | 是 | 文件路径 | |
data | ArrayBuffer | string | 是 | 要写入的内容 |
返回值:无
示例:
BK.fileSystem.writeFileSync("GameSandBox://config.json",bkBuffer);
zipSync(srcPath,targetZip)
同步压缩文件或目录
手Q版本:7.8.0
函数参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
srcPath | string | 是 | 源压缩文件路径 |
targetZip | string | 是 | 目标压缩zip路径 |
返回值:无
示例:
BK.fileSystem.zipSync("GameSandBox://config.json","GameSandBox://test.zip");
unzipSync(srcZip, targetPath)
同步解压文件
手Q版本:7.8.0
函数参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
srcZip | string | 是 | 源压缩zip路径 |
targetPath | string | 是 | 目标路径 |
返回值:无
示例:
BK.fileSystem.unzipSync("GameSandBox://test.zip","GameSandBox://test/");
makeDirSync(dirPath)
同步创建目录
手Q版本:7.8.0
函数参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
dirPath | string | 是 | 目标路径 |
返回值:无
示例:
BK.fileSystem.makeDirSync("GameSandBox://test/");
unlinkSync(path)
同步删除文件
手Q版本:7.8.0
函数参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
path | string | 是 | 目标路径 |
返回值:无
示例:
BK.fileSystem.unlinkSync("GameSandBox://test/aaa.txt");
copyFileSync(srcPath, destPath)
同步拷贝文件
手Q版本:7.8.0
函数参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
srcPath | string | 是 | 源文件路径 |
destPath | string | 是 | 目标文件路径 |
返回值:无
示例:
BK.fileSystem.copyFileSync("GameSandBox://test/aaa.txt","GameSandBox://test/bbb.txt");
accessSync(path)
文件是否存在
手Q版本:7.8.0
函数参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
path | string | 是 | 文件路径 |
返回值:
类型 | 说明 |
---|---|
boolean | 文件存在返回 true ,否则返回 false |
示例:
var isExist = BK.fileSystem.accessSync("GameSandBox://test/aaa.txt");
isDirectory(path)
路径是否是文件夹
手Q版本:7.8.0
函数参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
path | string | 是 | 路径 |
返回值:
类型 | 说明 |
---|---|
boolean | 文件夹返回 true ,否则返回 false |
示例:
var isDirector = BK.fileSystem.isDirectory("GameSandBox://test/aaa.txt");
getFileInfoSync(path)
获取文件信息 手Q版本:7.8.0
函数参数:
参数名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
path | string | 是 | 路径 |
返回值 object:
属性名 | 类型 | 说明 |
---|---|---|
size | number | 文件字节数 |
示例:
var fileInfo = BK.fileSystem.getFileInfoSync("GameSandBox://test/aaa.txt");
// fileInfo.size
readDir(Object)
读取文件目录
手Q版本:7.8.0
参数Object属性:
属性名 | 类型 | 是否必填 | 说明 |
---|---|---|---|
path | string | 是 | 目录路径 |
needDir | boolean | 否 | 是否需要读出文件夹 |
success | Function | 否 | 接口调用成功回调 |
fail | Function | 否 | 接口调用失败回调 |
complete | Function | 否 | 接口调用完成回调 |
object.success 回调函数
参数名 | 类型 |
---|---|
obj | Array \< string > |
object.fail 回调函数
参数名 | 类型 | 说明 |
---|---|---|
msg | string | 错误信息 |
errcode | number | 错误码 |
示例:
BK.fileSystem.readDir({ "path": 'GameRes://resource/texture',
"needDir": false ,
'success':function (res) {
for (var i =0; i< res.files.length;i++) {
var item = res.files[i];
}
zipTest(files);
},
'fail': function(res){
BK.Script.log(1,1,'readDir failed');
},
'complete':function(res){
BK.Script.log(1,1,'readDir complete');
}
});