返回插件列表

MFilemanager

提供文件操作,文件管理系列接口

版本依赖

"mysoft-plugin-core": "^3.3.8"

API

  1. 文件存在

    MFileManager.exists(path, callback(boolean));

    参数 类型 作用
    path string 文件的绝对路径
    callback(boolean) Function 回调函数,true存在,false不存在.

    示例代码

    MFileManager.exists(cordova.file.dataDirectory + "www/testdata.zip"
        ,function (boolean) {
            console.log("boolean:" + JSON.stringify(boolean))
        });
    
  2. 判断文件是目录还是文件

    MFileManager.type(path, success(int),fail);

    参数 类型 作用
    path string 文件的绝对路径
    success(int) Function 执行成功回调,1文件,0目录.
    fail(obj) Function 失败回调函数,参数为json对象.例如: {"errCode": -1, "errMsg": ""}

    示例代码

    MFileManager.type(cordova.file.dataDirectory + "www/testdata.zip"
        ,function (int) {
            console.log("success:" + JSON.stringify(int))
        },function (error) {
            console.log("error:" + JSON.stringify(error))
        });
    
  3. 创建文件夹

    MFileManager.mkdirs(path, success, fail);

    参数 类型 作用
    path string 文件的绝对路径
    success() Function 执行成功回调.
    fail(obj) Function 失败回调函数,参数为json对象.例如: {"errCode": -1, "errMsg": ""}

    示例代码

    MFileManager.mkdirs(cordova.file.dataDirectory + "www"
        ,function () {
            console.log("success")
        },function (error) {
            console.log("error:" + JSON.stringify(error))
        }); 
    
  4. 创建文件

    MFileManager.createFile(path, content, success, fail);

    参数 类型 作用
    path string 文件的绝对路径,如果父路径不存在,会自动创建。
    content string 可选参数,创建文件时写进去的文本内容
    success() Function 执行成功回调.
    fail(obj) Function 失败回调函数,参数为json对象.例如: {"errCode": -1, "errMsg": ""}

    示例代码

    MFileManager.createFile(cordova.file.dataDirectory + "www.js",""
        ,function () {
            console.log("success")
        },function (error) {
            console.log("error:" + JSON.stringify(error))
        });
    
  5. 复制文件(支持文件夹)

    MFileManager.copyFile(srcPath, dstPath, success, fail, delete);

    参数 类型 作用
    srcPath string 源文件的绝对路径
    dstPath string 目标文件的绝对路径,如果父路径不存在,会自动创建。
    success() Function 执行成功回调.
    fail(obj) Function 失败回调函数,参数为json对象.例如: {"errCode": -1, "errMsg": ""}
    delete boolean 可选参数,默认false, true表示删除源文件

    示例代码

    MFileManager.copyFile(cordova.file.dataDirectory + "www.js",
        cordova.file.dataDirectory + "dstPath/www.js"
        ,function () {
            console.log("success")
        },function (error) {
            console.log("error:" + JSON.stringify(error))
        });
    
  6. 删除文件(支持文件夹)

    MFileManager.deleteFile(path, success, fail);

    参数 类型 作用
    path string 源文件的绝对路径
    success() Function 执行成功回调.
    fail(obj) Function 失败回调函数,参数为json对象.例如: {"errCode": -1, "errMsg": ""}

    注意:删除文件时,务必做一下文件是否存在的校验

    示例代码

    MFileManager.deleteFile(cordova.file.dataDirectory + "www.js",
        ,function () {
            console.log("success")
        },function (error) {
            console.log("error:" + JSON.stringify(error))
        });
    
  7. 压缩文件,生成zip包

    MFileManager.zipFile(path, files, success, fail);

    参数 类型 作用
    path string zip文件的绝对路径
    files array 需要压缩的文件路径的数组
    success() Function 执行成功回调.
    fail(obj) Function 失败回调函数,参数为json对象.例如: {"errCode": -1, "errMsg": ""}

    示例代码

    MFileManager.zipFile(cordova.file.dataDirectory + "www.zip",
        [cordova.file.dataDirectory + "www.js"]
        ,function () {
            console.log("success")
        },function (error) {
            console.log("error:" + JSON.stringify(error))
        });
    
  8. 解压文件

    MFileManager.unZipFile(srcPath, desPath, callback, fail);

    参数 类型 作用
    srcPath string 源文件路径(绝对路径)
    desPath string 解压目标路径(绝对路径)
    fail(obj) Function 失败回调函数,参数为json对象.例如: {"errCode": -1, "errMsg": ""}
    callback Object 相应回调

    **callback说明

    参数 类型 作用
    start() Function 解压开始
    progress(int) Function 解压进度回调,返回百分比0-100.
    finish() Function 解压完成回调;

    示例代码

    MFileManager.unZipFile(cordova.file.dataDirectory + "www/testdata.zip"
        , cordova.file.dataDirectory + "www/"
        , {
            "start": function () {
                console.log("start")
            }, "progress": function (process) {
                console.log("progress:" + process)
            }, "finish": function () {
                console.log("finish")
            }
        },function (error) {
            console.log("error:" + JSON.stringify(error))
        });
    
  9. 获取文件的md5值

    MFileManager.md5(path, success, fail);

    参数 类型 作用
    path string 文件的绝对路径
    success(result) Function 执行成功回调.result为string类型的文件md5值.
    fail(obj) Function 失败回调函数,参数为json对象.例如: {"errCode": -1, "errMsg": ""}

    示例代码

    MFileManager.md5(cordova.file.dataDirectory + "www.zip"
        ,function () {
            console.log("success")
        },function (error) {
            console.log("error:" + JSON.stringify(error))
        });
    
  10. 获取文件的长度

    MFileManager.getLength(path, success, fail);

    参数 类型 作用
    path string 文件的绝对路径
    success(result) Function 执行成功回调.result为long型的文件长度.
    fail(obj) Function 失败回调函数,参数为json对象.例如: {"errCode": -1, "errMsg": ""}

    示例代码

    MFileManager.getLength(cordova.file.dataDirectory + "www.zip"
        ,function () {
            console.log("success")
        },function (error) {
            console.log("error:" + JSON.stringify(error))
        });
    
  11. 读取文件内容(和createFile配合使用,读取文件建议不要太大,最好在1兆以内)

    MFileManager.readFile(path, success, fail);

    参数 类型 作用
    path string 文件的绝对路径
    success(result) Function 执行成功回调.result为文件内容,String类型.
    fail(obj) Function 失败回调函数,参数为json对象.例如: {"errCode": -1, "errMsg": ""}

    示例代码

    MFileManager.readFile(cordova.file.dataDirectory + "www.zip"
        ,function () {
            console.log("success")
        },function (error) {
            console.log("error:" + JSON.stringify(error))
        });
    
  12. 文件内容追加

    MFileManager.appendContent(path, content,success, fail);
    
参数 类型 作用
path string 文件的绝对路径,如果文件不存在,直接创建;存在则追加
content string 要追加的内容
success(result) Function 执行成功回调.
fail(obj) Function 失败回调函数,参数为json对象.例如: {"errCode": -1, "errMsg": ""}

示例代码

```javascript
MFileManager.appendContent(cordova.file.dataDirectory + "www.js",""
    ,function () {
        console.log("success")
    },function (error) {
        console.log("error:" + JSON.stringify(error))
    });
```
  1. lzma压缩文件,生成.7z压缩包(iOS仅支持iOS8及以上系统,请至config.xml中确认deployment-target的值)

    MFileManager.lzmaFile(path, files,success, fail);
    
    参数 类型 作用
    path string 7z文件的绝对路径

|files|array|需要压缩的文件路径的数组 |success()|Function|执行成功回调. |fail(obj)|Function|失败回调函数,参数为json对象.例如: {"errCode": -1, "errMsg": ""}

# 示例代码
```javascript
MFileManager.lzmaFile(cordova.file.dataDirectory + "www.7z",[cordova.file.dataDirectory + "www.js"]
    ,function () {
        console.log("success")
    },function (error) {
        console.log("error:" + JSON.stringify(error))
    });
```
  1. 解压.7z压缩包(iOS仅支持iOS8及以上系统,请至config.xml中确认deployment-target的值

    MFileManager.unLzmaFile(srcPath, desPath, success, fail);
    
    参数 类型 作用
    srcPath string 源文件路径(绝对路径)
    desPath string 解压目标路径(绝对路径)
    success() Function 执行成功回调.
    fail(obj) Function 失败回调函数,参数为json对象.例如: {"errCode": -1, "errMsg": ""}

    示例代码

    MFileManager.unLzmaFile(cordova.file.dataDirectory + "www.7z",
    cordova.file.dataDirectory + "www"
        ,function () {
            console.log("success")
        },function (error) {
            console.log("error:" + JSON.stringify(error))
        });
    
  2. 获取某个路径下的文件列表

    MFileManager.contentsOfDirectory(path, success, error};
    
    参数 类型 作用
    path String 文件的绝对路径, 支持file://
    success(result) 成功回调,参数result为json对象数组。数组元素为空,则说明该文件夹中没有内容。
    error(result) 错误回调,result为json对象。包含错误消息。比如该路径不存在,该路径不是文件夹。

    result结构说明

    参数 类型 说明
    isDirectory boolean 是不是目录
    isFile boolean 是不是文件
    isHidden boolean 是不是隐藏文件
    lastModified long 最后修改时间,毫秒为单位。如:1472395049000
    length long 文件大小
    name String 文件名称
    path String 文件绝对路径 此参数只针对Andriod有效;(因iOS系统中应用的存储路径名称无法预知。可用父目录路径+name得到全路径)

    示例代码

    ```js
        MFileManager.contentsOfDirectory('/sdcard/youku', function(x){console.log(x)}, function(x){console.log(x)});
    ```
    

均上路径支持: file://前缀和/代表的根路径