Ini语法
简介
INI 是一种固定标准格式的配置文件,INI配置方法来自 MS-DOS 操作系统
格式
Ini 格式文件的基本格式如下:
部分 (Sections)
每个部分都由一个 [section]
标题开头。
- 名称单独出现在一行中
- 名称在方括号
[
和]
中 - 没有明确的
section 结束
分隔符 - 在下一个
section
声明处或文件末尾处结束 - 部分和属性名称不区分大小写(默认情况下,
[section]
的名称是区分大小写的,而后面键是不区分大小写的。)
与下面 JSON
大致相同
条目
由特定的字符串 (=
或者 :
, 默认是 =
) 分割的键 / 值条目。前面和后面的空格,将会从键和值中删除。值也是可以跨多行的,只要值在换行时,缩进的深度比第一行的要深就行。
- 基本元素是键或属性
- 每个键由
名称
和值
构成,等号 (=) 分隔 键名称
显示在等号的左侧
等号
和分号
是保留
字符
与下面JSON 大致相同
嵌套(部分解析器支持)
与下面 JSON
大致相同
嵌套到上一节 (简写)
转义字符
符号 | 含义 |
---|---|
\\ | (单个反斜杠,转义转义字符) |
\' | 撇号 |
\" | 双引号 |
\0 | 空字符 |
\a | 铃声/警报/声音 |
\b | 退格键,某些应用程序的贝尔字符 |
\t | 制表符 |
\r | 回车 |
\n | 换行 |
\; | 分号 |
\# | 数字符号 |
\= | 等号 |
\: | 冒号 |
\x???? | 十六进制代码点的 Unicode 字符对应于 ???? |
数组
与下面 JSON
大致相同
注释
配置文件中也可能包含注释部分,由特定字符 (#
或者 ;
,默认是 #
) 界定,值得注意的是,注释部分不可与键值处于同一行
注释 (;
)
注释 (#
)
一行之后的注释 (;
,#
) (不标准)
在某些情况下注释必须单独出现在行上
解释器
- @go-ini/ini (golang)
- @npm/ini (nodejs)
- @zonyitoo/rust-ini (rust)
- @rxi/ini ©
- @pulzed/mINI (c++)
- @rickyah/ini-parser (c#)
- @Enichan/Ini (c#)