Example #1
0
    public static T ReadDataFromJSON <T>(Constants.JSONIndex fileIndex)
    {
        string fileName;

        if (JsonFileList.TryGetValue(fileIndex, out fileName) == true)
        {
            string path = (Application.platform == RuntimePlatform.Switch ||
                           Application.platform == RuntimePlatform.Android ||
                           Application.platform == RuntimePlatform.IPhonePlayer ?
                           Application.persistentDataPath : Application.dataPath) + fileName;

            if (!System.IO.File.Exists(path))
            {
                string tempJsonString = JsonUtility.ToJson("{ }");
                WriteDataToJSON(fileIndex, ref tempJsonString);
            }

            string jsonString = System.IO.File.ReadAllText(path);
            return(JsonUtility.FromJson <T>(jsonString));
        }
        else
        {
            throw new System.Exception("There is no fileNumber in the list");
        }
    }
Example #2
0
    public static void WriteDataToJSON <T>(Constants.JSONIndex fileIndex, ref T jsonData)
    {
        string fileName;

        if (JsonFileList.TryGetValue(fileIndex, out fileName) == true)
        {
            string jsonString = JsonUtility.ToJson(jsonData);
            string directory  = (Application.platform == RuntimePlatform.Switch ||
                                 Application.platform == RuntimePlatform.Android ||
                                 Application.platform == RuntimePlatform.IPhonePlayer ?
                                 Application.persistentDataPath : Application.dataPath);
            string path = directory + fileName;

            if (!System.IO.Directory.Exists(directory))
            {
                System.IO.Directory.CreateDirectory(directory);
            }
            string jsonFolder = '/' + fileName.Split('/')[1];
            if (!System.IO.Directory.Exists(directory + jsonFolder))
            {
                System.IO.Directory.CreateDirectory(directory + jsonFolder);
            }
            jsonFolder = '/' + fileName.Split('/')[1] + '/' + fileName.Split('/')[2];
            if (!System.IO.Directory.Exists(directory + jsonFolder))
            {
                System.IO.Directory.CreateDirectory(directory + jsonFolder);
            }

            if (!System.IO.File.Exists(path))
            {
                System.IO.File.Create(path).Dispose();
            }
            System.IO.File.WriteAllText(path, jsonString);
        }
        else
        {
            throw new System.Exception("There is no fileNumber in the list");
        }
    }