美文网首页
ts_Creator本地存储数据

ts_Creator本地存储数据

作者: 浪荡少年 | 来源:发表于2019-10-30 16:17 被阅读0次

    //本地存储

    export class local_Storage

    {

        //只读

        OnlyRead()

        {

            let playBack = JSON.parse(cc.sys.localStorage.getItem("PlayBack"));

            return playBack;

        }

        //只写

        OnlyWrite(msg:any)

        {

            let data = JSON.stringify(msg);

            cc.sys.localStorage.setItem('PlayBack',data);

        }

        //读写

        ReadWrite(msg:any)

        {

            let data = JSON.stringify(msg);

            cc.sys.localStorage.setItem('PlayBack',data);

            let str_data = JSON.parse(cc.sys.localStorage.getItem('PlayBack'));

            return str_data;

        }

    }

    /**

     * 浏览器中不支持

     */

    export class FileLoad

    {

        writeable_path:any;//可读可写的资源文件夹

        playBack_dir:any;//本地回放的文件夹

        Init()

        {

            // jsb.fileUtils获取全局的工具类的实例, cc.director;

            // 如果是在电脑的模拟器上,就会是安装路径下模拟器的位置;

            // 如果是手机上,那么就是手机OS为这个APP分配的可以读写的路径; 

            // jsb --> javascript binding --> jsb是不支持h5的

            this.writeable_path = jsb.fileUtils.getWritablePath();

            console.log(this.writeable_path);

            // 要在可写的路径先创建一个文件夹

            this.playBack_dir = this.writeable_path + LobbyHandler.Instance().UserAttr.nickName +"_playBack";

            cc.log(this.playBack_dir);

            // 路径也可以是 外部存储的路径,只要你有可写外部存储的权限;

            // getWritablePath这个路径下,会随着我们的程序卸载而删除,外部存储除非你自己删除,否者的话,卸载APP数据还在;

            if(!jsb.fileUtils.isDirectoryExist(this.playBack_dir)) {

                jsb.fileUtils.createDirectory(this.playBack_dir);

            }

            else {

                console.log("dir is exist!!!");//文件夹已经存在

            }

        }

        //只写

        OnlyWrite(msg:any)

        {

            let data = JSON.stringify(msg);

            // 读写文件我们分两种,文本文件, 二进制文件;

            // (1)文本文件的读,返回的是一个string对象

            var str_data = data;

            jsb.fileUtils.writeStringToFile(str_data, this.playBack_dir + "/playBack.txt");

        }

        //只读

        OnlyReade():string

        {

            // (1)文本文件的读,返回的是一个string对象

            var str_data = jsb.fileUtils.getStringFromFile(this.playBack_dir + "/playBack.txt");

            if(str_data != null || str_data != undefined)

            {

                return str_data;

            }

            return null;

        }

        //可以读也可以写

        Write2Reade(msg:any):string

        {

            let data = JSON.stringify(msg);

            // 读写文件我们分两种,文本文件, 二进制文件;

            // (1)文本文件的读,返回的是一个string对象

            var str_data = data;

            jsb.fileUtils.writeStringToFile(str_data, this.playBack_dir + "/playBack.txt");

            // (1)文本文件的读,返回的是一个string对象

            str_data = jsb.fileUtils.getStringFromFile(this.playBack_dir + "/playBack.txt"); 

            return str_data;

        }

        //删除文件及文件夹

        Remove_Dir()

        {

            // 删除文件和文件夹

            jsb.fileUtils.removeFile(this.playBack_dir + "/playBack.txt");

            jsb.fileUtils.removeDirectory(this.playBack_dir);

        }

        getplayBack_dir()

        {

            this.writeable_path = jsb.fileUtils.getWritablePath();

            console.log(this.writeable_path);

            // 要在可写的路径先创建一个文件夹

            this.playBack_dir = this.writeable_path + LobbyHandler.Instance().UserAttr.nickName +"_playBack";

            return this.playBack_dir;

        }

    }

    相关文章

      网友评论

          本文标题:ts_Creator本地存储数据

          本文链接:https://www.haomeiwen.com/subject/bezovctx.html