在Unity开发过程中,有的时候本地需要一些配置文件,这个时候可以有很多种选择,json,xml,txt,ini等等很多种,今天我们说的就是ini配置文件在Unity中的写入与读取~
ini文件是由节,键,值组成,相对于别的一些文件格式,可读性是很高的,而且当配置文件很多的时候,可以以;添加注释
使用该插件的步骤
1.打开文件
2.文件操作(增删改查)
3.关闭文件(Close,想要读取另外一个ini文件,必须先关闭当前操作的文件)
插件公共函数
函数 | 作用 |
Open | 打开文件(可根据TextAssets/路径/string)如果文件那不存在则创建 |
ToString | 当前INIParser类中读取的文本转string |
Close | 关闭文件(保存所有的修改到ini文件) |
IsSectionExists | 判断当前打开文件中是否存在参数"节" |
IsKeyExists | 判断某个参数"节"中是否存在参数Key |
SectionDelete | 删除"节" |
KeyDelete | 删除参数"节"中的参数key数据(测试,如果该key为新增则无法删除,解决方案:重新打开该文件,再次删除Key) |
ReadValue | 读取参数"节"中参数key数据,根据DefaultValue;类型,返回对应类型(如果执行错误,返回DefaultValue) |
WriteValue | 根据value,写参数"节"中的参数Key的value(如果执行错误,返回DefaultValue) |
插件属性
属性 | 作用 |
FileName | 文件完整路径 |
实例操作
public class ConfigInfo : MonoBehaviour
{
public string iniPath = Application.streamingAssetsPath + "/config.ini";
public GameObject cubeObj;
void Start()
{
INIParser iNIParser = new INIParser();
//增加/修改
iNIParser.Open(iniPath);
iNIParser.WriteValue("CubeInfo", "name", cubeObj.name);
iNIParser.WriteValue("CubeInfo", "x", cubeObj.transform.position.x);
iNIParser.WriteValue("CubeInfo", "y", cubeObj.transform.position.y);
iNIParser.WriteValue("CubeInfo", "z", cubeObj.transform.position.z);
iNIParser.WriteValue("CubeInfo", "z", 5);
iNIParser.Close();
//删除
iNIParser.Open(iniPath);
iNIParser.KeyDelete("CubeInfo", "name");
iNIParser.SectionDelete("CubeInfo");
iNIParser.Close();
//查询
iNIParser.Open(iniPath);
iNIParser.ReadValue("CubeInfo", "name", "null");
iNIParser.ReadValue("CubeInfo", "x", 0.0f);
iNIParser.Close();
}
}
这个插件使用起来还是很简单方便的,当然也可以根据自己的需求拓展自己的方法
好了,文章到此就结束了,本文有什么错误的观点或者用法,希望各位看官能够及时提出,希望在自己积累知识的同时,能帮助到大家~