美文网首页
swift 使用plist本地储存数据

swift 使用plist本地储存数据

作者: zhlv | 来源:发表于2018-03-26 16:36 被阅读0次

//单例

    staticletlocaManager =LocalDataManager()

    // 这里将init方法私有化了,这样在其他地方就无法init,保证了单例的唯一性

    private override init() {}

    //增加 添加别名和地址的缓存

    funcaddRequestData(label:String, address:String) -> (Bool){

        //新建字典

        letuserDict : [String:String] = [label:address]

        //获取结果是NSArray

        letlocalTempArray =NSArray(contentsOfFile:K_LocalDataRoadStrength)

        varlocalArray:[Any] = []

        if((localTempArray) !=nil)  {

            // NSArray 转化为 Array.

            localArray = localTempArray!as[AnyObject]

        }

        //添加元素

        localArray.append(userDict)

        print(localArray)

        //Array 转化为NSArray

        letlocalNSArray:NSArray= localArrayasNSArray

        //保存到本地

        letisSuccess = localNSArray.write(toFile:K_LocalDataRoadStrength, atomically:true)

        //保存到本地

        returnisSuccess

    }

    //删除 别名和地址

    funcdeleteData(label:String,address:String) ->Bool{

        //获取全部数据

        //获取结果是NSArray

        letlocalTempArray =NSArray(contentsOfFile:K_LocalDataRoadStrength)

        //NSArray 转化为Array

        varlocalArray:[Any] = localTempArray!as[AnyObject]

        for(index,item)inlocalArray.enumerated() {

            guardletdict = itemas? [String:String]else{

                continue

            }

            if(dict[label] == address){

                localArray.remove(at: index)

                print(localArray)

                break

            }

        }

        //Array 转化为NSArray

        letlocalNSArray:NSArray= localArrayasNSArray

        //保存到本地

        letisSuccess = localNSArray.write(toFile:K_LocalDataRoadStrength, atomically:true)

        returnisSuccess

    }

    //查看 所有的别名个地址

    funcqueryData() ->(Array){

        //查看所有的本地数据

        letlocalTempArray =NSArray(contentsOfFile:K_LocalDataRoadStrength)

        letlocalArray : [Any] = localTempArrayas!Array

        returnlocalArray

    }

    funcsaveDataPlist() {

        let arry = NSArray(objects: "stev","baidu.com","com","12344","robinson")

        letfilePath:String=NSHomeDirectory() +"/Documents/tf.plist"

        arry.write(toFile: filePath, atomically:true)

        lettfArray =NSArray(contentsOfFile:NSHomeDirectory() +"/Documents/tf.plist")

        print(tfArrayasAny)

        testSaveDicPlist()

    }

    functest(){

        vararray : [Any] = []

        array.append(["1111":"111111"])

        array.append(["2222":"222222"])

        array.append(["3333":"333333"])

        array.append("4444")

        array.append(555)

        for(index,item)inarray.enumerated() {

            letvalue = item

            //这里判断 如果是字典,., 而且key是"1111" 这里怎么写

            guardletdict = itemas? [String:String]else{

                continue

            }

            print(dict)

            print(" \(index)  \(value)")

        }

    }

    functestSaveDicPlist(){

        let  myArray = [

            [

                ["name":"小明" , "url":"google.com"],

                ["name":"张三", "url":"tf234.com"],

                ["name":"里斯" , "url":"csdn.com"]

            ],

            [

                ["name":"张三", "url":"tf234.com"],

                ["name":"里斯" , "url":"csdn.com"]

            ]

        ]

        letfilePath:String=NSHomeDirectory() +"/Documents/tfDic.plist"

        NSArray(array: myArray).write(toFile: filePath, atomically:true)

        print(filePath)

        lettfArray =NSArray(contentsOfFile:NSHomeDirectory() +"/Documents/tfDic.plist")

        print(tfArrayasAny)

    }

相关文章

网友评论

      本文标题:swift 使用plist本地储存数据

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