微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ini (ini-parser)配置文件解析 for donet

介绍

此ini解析库适用于mono(unity3d),donet,大小在30kb左右。

开源免费:https://github.com/rickyah/ini-parser

 

使用示例

engine_config.ini  配置文件内容如下

[Engine]
: product real path
ProductRelPath    = ../Product    
AssetBundlebuildrelPath    = ../Product/Bundles    
StreamingBundlesFolderName = Bundles    
AssetBundleExt = .bytes    
IsLoadAssetBundle = 1

使用方法如下

using System; IniParser.Model; IniParser.Model.Formatting; IniParser.Parser; public class EngineConfigs { private readonly IniData _iniData; public EngineConfigs(string iniconfig) { var parser = new IniDataParser(); _iniData = parser.Parse(iniconfig); } /// <summary> /// GetConfig from section </summary> <param name="section"></param> <param name="key"></param> <param name="throwError">whether or not throw error when get no config</param> <returns></returns> string GetConfig(string section,string key,1)">bool throwError = true) { var sectionData = _iniData[section]; if (sectionData == null) { if (throwError) throw new Exception("Not found section from ini config: " + section); return ; } var value = sectionData[key]; if (value == new Exception(string.Format(Not found section:`{0}`,key:`{1}` config",section,key)); } return value; } } IniParseDemo { void Main() { EngineConfigs engineConfigs = new EngineConfigs(xxx); //此处返回 ../Product var productRelPath = engineConfigs.GetConfig(Engine",ProductRelPath); } }

注意事项

IniDataParser.Parse(iniconfig);

iniconfig是具体的内容,而不是某个ini文件

 

其它

示例:https://github.com/zhaoqingqing/blog_samplecode/tree/master/unity_helper/iniparser

或者参照 KEngine中的AppEngine使用:https://github.com/mr-kelly/KEngine/blob/3351991a9eb7593a53a6070eddff5dd912fc6d7a/KEngine.UnityProject/Assets/KEngine/AppEngine.cs

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐