예제 #1
0
    public static int GetInt(string intKey)
    {
        if (intKey == string.Empty)
        {
            throw new Exception("intKey不能为空");
        }
        foreach (var item in playerPrefsIntList)
        {
            PlayerPrefsIntModel model = new PlayerPrefsIntModel();
            try
            {
                model = Coding <PlayerPrefsIntModel> .decode(item);
            }
            catch (Exception err)
            {
                Debug.Print("GetInt解析失败" + err.ToString());
                return(0);
            }

            if (model.intKey == intKey)    //找到了数据
            {
                return(model.intValue);
            }
        }
        return(0);
    }
예제 #2
0
    public static void SetInt(string intKey, int intValue)
    {
        if (intKey == string.Empty)
        {
            throw new Exception("intKey不能为空");
        }
        bool isAllreadyExist = false;

        for (int i = 0; i < playerPrefsIntList.Count; i++)
        {
            //      Debug.Print("每一条PlayerPrefs数据:" + playerPrefsList[i]);
            PlayerPrefsIntModel model = new PlayerPrefsIntModel();
            try
            {
                model = Coding <PlayerPrefsIntModel> .decode(playerPrefsIntList[i]);
            }
            catch (Exception e)
            {
                Debug.Print("SetInt解析失败" + e.ToString());
                return;
            }

            if (model.intKey == intKey)    //找到了数据
            {
                isAllreadyExist = true;
                PlayerPrefsIntModel intModel = new PlayerPrefsIntModel();
                intModel.intKey   = intKey;
                intModel.intValue = intValue;
                string updateItem = Coding <PlayerPrefsIntModel> .encode(intModel);

                playerPrefsIntList[i] = updateItem;
                break;
            }
        }
        if (isAllreadyExist == false)
        {
            PlayerPrefsIntModel intModel = new PlayerPrefsIntModel();
            intModel.intKey   = intKey;
            intModel.intValue = intValue;
            string updateItem = Coding <PlayerPrefsIntModel> .encode(intModel);

            playerPrefsIntList.Add(updateItem);
        }
        //写入新文件
        using (StreamWriter file = new System.IO.StreamWriter(PlayerPrefsIntPath, false))
        {
            string newJsonFile = "";
            foreach (var item in playerPrefsIntList)
            {
                newJsonFile += item + "\r";
            }
            file.WriteLine(newJsonFile);    // 直接追加文件末尾,换行
        }
    }