配置文件结构修改

dev_chengFeng
gaoxin 2021-02-24 13:53:11 +08:00
parent 4dacf3081e
commit cd4a1e8c89
2 changed files with 55 additions and 7 deletions

View File

@ -23,24 +23,73 @@ namespace GameLogic
public string GetInfo(string key) public string GetInfo(string key)
{ {
if (info.ContainsKey(key)) string[] ks = key.Split('.');
Hashtable ins = info;
for (int i = 0; i < ks.Length; i++)
{ {
return info[key] as string; string k = ks[i];
if (!ins.ContainsKey(k))
{
break;
} }
// 没有下一个值直接返回
if (i + 1 == ks.Length)
{
return ins[k] as string;
}
else
{
ins = ins[k] as Hashtable;
}
}
return null; return null;
} }
public void RemoveInfo(string key) public void RemoveInfo(string key)
{ {
if (info.ContainsKey(key)) string[] ks = key.Split('.');
Hashtable ins = info;
for (int i = 0; i < ks.Length; i++)
{ {
info.Remove(key); string k = ks[i];
if (!ins.ContainsKey(k))
{
break;
}
//
if (i + 1 == ks.Length)
{
ins.Remove(k);
}
else
{
ins = ins[k] as Hashtable;
}
} }
} }
public void SetInfo(string key, string value) public void SetInfo(string key, string value)
{ {
info[key] = value; string[] ks = key.Split('.');
Hashtable ins = info;
for (int i = 0; i < ks.Length; i++)
{
string k = ks[i];
if (!ins.ContainsKey(k))
{
break;
}
//
if (i + 1 == ks.Length)
{
ins[k] = value;
}
else
{
ins = ins[k] as Hashtable;
}
}
} }
} }
public class ConfigManager : Singleton<ConfigManager> public class ConfigManager : Singleton<ConfigManager>

View File

@ -2,9 +2,8 @@
"buglyId":"261348dcd3", "buglyId":"261348dcd3",
"channel":"pc", "channel":"pc",
"serverUrl":"http://60.1.1.23:8080/", "serverUrl":"http://60.1.1.23:8080/",
"func":{ "func":{
"Func_1":{"desc":"", "versionCode:"", isActive:""} "Func_1":{"desc":"test", "versionCode":"123", "isActive":"1"}
} }
} }