介绍

此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;
using IniParser.Model;
using IniParser.Model.Formatting;
using 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>
public string GetConfig(string section, string key, bool throwError = true)
{
var sectionData = _iniData[section];
if (sectionData == null)
{
if (throwError)
throw new Exception("Not found section from ini config: " + section);
return null;
}
var value = sectionData[key];
if (value == null)
{
if (throwError)
throw new Exception(string.Format("Not found section:`{0}`, key:`{1}` config", section, key));
}
return value;
}
} public class IniParseDemo
{
public 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

ini (ini-parser)配置文件解析 for donet的更多相关文章

  1. Python学习笔记:configparser(INI格式配置文件解析)

    在平时的开发中感觉INI格式的配置文件使用还是挺需要的,有时会使用一个单独的py来存放一些常量或者配置项,大多时候这样倒是挺好用的,但是如果某些配置项需要在运行时由用户来修改指定,比如很多app在关闭 ...

  2. python ConfigParser模块 配置文件解析

    ConfigParser模块主要是用来解析配置文件的模块,像mysql,或者win下面的ini文件等等 下面我们来解析mysql的配置文件my.cnf my.cnf配置文件内容 [mysqld] da ...

  3. golang开发:类库篇(四)配置文件解析器goconfig的使用

    为什么要使用goconfig解析配置文件 目前各语言框架对配置文件书写基本都差不多,基本都是首先配置一些基础变量,基本变量里面有环境的配置,然后通过环境变量去获取该环境下的变量.例如,生产环境跟测试环 ...

  4. python接口自动化测试 - configparser配置文件解析器详细使用

    configparser简介 ConfigParser模块已在Python 3中重命名为configparser 该模块定义了ConfigParser类. ConfigParser类实现一种基本的配置 ...

  5. Python3-configparser模块-配置文件解析器

    Python3中的configparser模块主要用于处理类似于windows ini 文件结构的配置文件 1.configparser模块提供实现基本配置语言的ConfigParser类 2.配置文 ...

  6. golang常用库:配置文件解析库-viper使用

    一.viper简介 viper 配置解析库,是由大神 Steve Francia 开发,他在google领导着 golang 的产品开发,他也是 gohugo.io 的创始人之一,命令行解析库 cob ...

  7. MyBatis 源码分析 - 配置文件解析过程

    * 本文速览 由于本篇文章篇幅比较大,所以这里拿出一节对本文进行快速概括.本篇文章对 MyBatis 配置文件中常用配置的解析过程进行了较为详细的介绍和分析,包括但不限于settings,typeAl ...

  8. ibatis源码学习2_初始化和配置文件解析

    问题在详细介绍ibatis初始化过程之前,让我们先来思考几个问题. 1. ibatis初始化的目标是什么?上文中提到过,ibatis初始化的核心目标是构造SqlMapClientImpl对象,主要是其 ...

  9. mybatis源码配置文件解析之五:解析mappers标签(解析XML映射文件)

    在上篇文章中分析了mybatis解析<mappers>标签,<mybatis源码配置文件解析之五:解析mappers标签>重点分析了如何解析<mappers>标签中 ...

随机推荐

  1. nginx部署django应用

    Django部署方式有很多种,之前写过一篇部署在Apache上的博文:https://www.cnblogs.com/shenh/p/7552722.html .下文介绍的是通过Nginx来部署. N ...

  2. 痞子衡嵌入式:ARM Cortex-M内核那些事(1)- 内核架构编年史

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是ARM内核架构历史. 众所周知,ARM公司是一家微处理器行业的知名企业,ARM公司本身并不靠自有的设计来制造或出售CPU,而是将处理器架 ...

  3. Jenkins持续集成介绍及插件安装版本更新演示(一)--技术流ken

    Jenkins介绍 Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能. Jenkins功能包括: ...

  4. [转]Rancher 1.6 Docs

    本文转自:https://rancher.com/docs/rancher/v1.6/zh/quick-start-guide/ 快速安装指南 在本节中,我们将进行简单快速的Rancher安装,即在一 ...

  5. WPF BitmapImage 占用资源无法释放、无法删除问题

    使用Image控件显示图片后,虽然自己释放了图片资源,Image.Source =null 了一下,但是图片实际没有释放.解决方案:修改加载方式~        public static Bitma ...

  6. 蓝桥杯试题----- 打印大X

    打印大X 小明希望用星号拼凑,打印出一个大X,他要求能够控制笔画的宽度和整个字的高度.为了便于比对空格,所有的空白位置都以句点符来代替. 要求输入两个整数m n,表示笔的宽度,X的高度.用空格分开(0 ...

  7. awk 详解

    AWK 简介 AWK是一种优良的文本处理工具.它不仅是 Linux 中也是任何环境中现有的功能最强大的数据处理引擎之一.这种编程及数据操作语言(其名称得自于它的创始人 Alfred Aho .Pete ...

  8. 【Zookeeper】windows环境下zookeeper安装

    下载  Apache官方最新版本为:3.4.12 下载地址:https://mirrors.cnnic.cn/apache/zookeeper/zookeeper-3.4.12/ 安装 解压到指定目录 ...

  9. python 实现微信自动回复(自动聊天)

    原文地址(本人):https://blog.csdn.net/a5878989/article/details/54974249 介绍 微信自动回复其实主要就是登录,接收消息,回复消息三个功能,微信没 ...

  10. C#如何通过属性名称反射出属性本身

    A a = new A(); Type t = typeof(A); var v1 = t.GetField("n").GetValue(a);//获取字段值,你的类A.n是字段, ...