using UnityEngine;
using System.Collections;
using System.Collections.Generic;
public class LocalizationManager
{
//单例模式
private static LocalizationManager _instance;
public static LocalizationManager GetInstance
{
get
{
if (_instance == null)
{
_instance = new LocalizationManager();
}
return _instance;
}
}
//选择自已需要的本地语言
public const string language = "Chinese";
private Dictionary<string, string> dic = new Dictionary<string, string>();
/// <summary>
/// 读取配置文件,将文件信息保存到字典里
/// </summary>
public LocalizationManager()
{
TextAsset ta = Resources.Load<TextAsset>(language);
string text = ta.text;
string[] lines = text.Split("\r\n".ToCharArray());
foreach (string line in lines)
{
if (string.IsNullOrEmpty(line))
continue;
string[] keyAndValue = line.Split('=');
Debug.Log("==" + keyAndValue[0] + "==" + keyAndValue[1] + "==");
dic.Add(keyAndValue[0], keyAndValue[1]);
}
}
/// <summary>
/// 获取value
/// </summary>
/// <param name="key"></param>
/// <returns></returns>
public string GetValue(string key)
{
if (dic.ContainsKey(key) == false)
{
return null;
}
string value = null;
dic.TryGetValue(key, out value);
//从txt里读出来的"\n"变成了“\\n”了,所以要重新替换一下
return value.Replace("\\n", "\n");
}
}
再Assest目录下的Resources文件夹里建一个Chinese.txt文件里面的内容格式如下
KEY.110001=测试1
KEY.110002=测试2