正文
Unity读取 JSon配置文件
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
一、记录
只是记录,现在在项目中删除掉了。先保留下来,以飨来着!!当然有包括自己。
二、读取配置的代码
简单粗暴
[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; // 是否为联网版本
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
三、保存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();
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
——–THE—————END———————