跳到主要内容

INI 互转

INI 与 JSON 双向互转,段/注释/重复段合并口径清晰。

本地计算 · 数据不出浏览器
INI
0 字符1 行0 B

JSON 结果

输入后自动转换。

使用说明

这个工具解决什么问题

老项目一堆 .ini 配置要迁进 JSON/YAML 的世界,或者反过来要把配置下发成 INI;手工搬要盯着段头、等号、注释符号,重复段还要手动合并,类型口径一错往返就变形。这个工具双向直转:INI 粘进去出 JSON/YAML,JSON 粘进去出 INI,段合并、注释、类型口径都有明确规则,报错给中文三段式提示。纯浏览器本地运行,配置文件不上传。

核心能力

标准 INI 解析:段头、键值对、分号井号注释齐全,重复段自动合并,无段落键归顶层。字符串口径:值不做类型推断一律按字符串,往返转换不变形。深层防御:嵌套超过两层(段里套对象、数组元素套对象)直接报错并给拍平建议。双向输出:JSON 两个空格缩进,YAML 交给 js-yaml,错误提示中文可读。本地转换:纯浏览器完成,配置不出本机。

使用建议

转换后先核对段数量与键数量,确认合并没有吞键;port、开关这类需要数字或布尔语义的键,在下游自己转型;JSON 转 INI 前把深层嵌套拍平成标量键,数组值会拼成单行逗号串,确认下游解析器认这种写法;值里有换行符会报错,INI 的值必须单行,先整理再转。

常见问题

值会被自动转成数字或布尔吗?

不会。INI 本身没有类型语义,所有值按字符串处理,port=8080 转出来就是字符串。这样往返转换结果一致,也不会把前导零的编号、版本号悄悄变成别的数,需要数字语义时在下游自行转型。

重复出现的段怎么处理?

同名段自然合并到同一份记录,段内同名键后者覆盖前者;没有段落头的键归入顶层段,JSON 里就是最前面的顶层键。合并规则固定,行为可预期。

为什么深层嵌套会报错?

INI 只有「段 → 键值」两层结构,第三层对象没有对应表达。工具直接报错并提示把嵌套对象拍平成标量键,而不是悄悄丢数据,JSON 转 INI 方向同理。

注释和坏行怎么处理?

分号或井号开头的行按注释跳过,空行忽略;既不是段头、注释也不含等号的行宽松跳过,不让一个坏行卡死整份配置的解析。

TOML/JSON 互转

TOML 与 JSON 双向互转,错误带行列定位,日期口径固定。

YAML TOML 互转

YAML 与 TOML 双向直转,null 剔除与日期口径明示。

CSV YAML 互转

CSV 行与 YAML 对象数组双向互转,引号转义兼容。

查看更多格式转换,或浏览全部工具。