• Unity读取 JSon配置文件


    本文章由cartzhang编写,转载请注明出处。 所有权利保留。
    文章链接:http://blog.csdn.net/cartzhang/article/details/51658230
    作者:cartzhang

    一、记录

    只是记录,现在在项目中删除掉了。先保留下来,以飨来着!!当然有包括自己。

    二、读取配置的代码

    简单粗暴

    [ExecuteInEditMode]
        public class Config : MonoBehaviour
        {
            private static ConfigFile pConf = null;
            public static ConfigFile ConfReference
            {
                get
                {
                    if (pConf == null)
                    {
                        string filePath = System.IO.Path.Combine(Application.streamingAssetsPath, "JsonConfig/Config.slqj");
                        if (string.IsNullOrEmpty(filePath))
                        {
                            return null;
                        }
    
                        if (File.Exists(filePath))
                        {
                            string text = File.ReadAllText(filePath);
    #if UNITY_EDITOR
                            Debug.Log(text);
    #else
                    Debug.logger.logEnabled = false;
    #endif
                            pConf = JsonUtility.FromJson<ConfigFile>(text);
                        }
                    }
                    return pConf;
                }
            }
        }
    
    
        [Serializable]
        public class ConfigFile
        {
            // server
            public string ServerIP;
            // gun    
            public int SecondGunAmmoNum;
            public int ThirdGunAmmoNum;
            //player
            public float MoveSpeedMultiplier;   // 移动速度倍率
            public float CamMinDamping;
            public int PlayerLifeNum;           // 玩家生命数
            public int PlayerHP;                // 玩家重生血值
            // HardwareConf
            public float DeadAreaThrold;
            public int FilterStep;              // 滤波步长
            public int joyStickIndex = 0;       // 开枪按键
            public float renderScale;           // 渲染缩放
            public bool IsUseOptics;            // 是否使用光学定位
            public bool IsUseDebug;             // 是否显示FPS 输入位置 玩家位置
            public int BlueEnemyCount;//蓝方敌人数量
            public int RedEnemyCount;//红方敌人数量
            public int GameReadyTime;//游戏准备倒计时
            public bool IsNetWorkVersion; // 是否为联网版本
        }

    三、保存Json文件

    代码:

     void Save2File()
            {
                string filePath = System.IO.Path.Combine(Application.streamingAssetsPath, "JsonConfig/pConfig.json");
    
                string text = "";
                FileInfo file = new FileInfo(filePath);
    
                if (file.Exists)
                {
                    text = JsonUtility.ToJson(NetWorkManager.config);
                    StreamWriter w = new StreamWriter(filePath);
                    w.Write(text);
                    w.Close();
                }
    
            }
    

    ——–THE—————END———————
    若有问题,请随时联系!!
    非常感谢!!!

    淋过一场大雨
    撞过铜墙铁壁
    你撑住我对我说没有关系
    让我们并肩远行
    沿途栽种风景00
    让你我让梦想

    这里写图片描述

  • 相关阅读:
    Camunda工作流——第三章 网关
    Camunda工作流——第二章 任务
    Camunda工作流——第一章 参与者
    需求库规划库储备库四库更新区域类型到meta_localinfo表
    备份需求库规划库储备库四库数据到temp模式里
    php 处理高精度计算函数
    php 使用file_put_content将 数据 push 到csv文件中
    忘记rabbitmq账号密码?创建rabbitmq新用户
    docker+nginx+consul+swoft 实现动态负载均衡
    docker 基础操作
  • 原文地址:https://www.cnblogs.com/qitian1/p/6461906.html
Copyright © 2020-2023  润新知