开发者 / 配置

INI转JSON转换器(以及JSON转INI)

将INI配置文件转换为JSON,其中节会转换为对象,带点号的节会转换为嵌套对象,key[]行会转换为数组,数字和布尔值会转换为JSON类型;也可以将JSON对象转换回INI。

INI转JSON转换器(以及JSON转INI): 每个[section]标头都会开始一个对象,而[database.replica]会在[database]中放入一个对象。行格式可以是key = value或key: value;;和#表示注释,带引号的值会保留其中的空格,key[] = value行会构建数组。反向转换时,普通值会先写入,每个对象都会转换为一个节。 完全在浏览器中本地运行,文件不会上传到服务器。

使用次数
在浏览器中
费用
免费·无需注册
可用性
可直接使用
INI转JSON转换器本地处理

完全在浏览器中运行

JSON

{
  "name": "Demo app",
  "debug": false,
  "database": {
    "host": "localhost",
    "port": 5432,
    "replica": {
      "host": "replica.local"
    }
  },
  "features": {
    "flags": [
      "search",
      "export"
    ]
  }
}

节会变成对象,像[database.replica]这样的带点节会成为另一个对象中的嵌套对象。注释以;或#开头,值后的注释前需要有一个空格,这样网址中的#才会保留。key[] = value形式的行会收集到数组中。INI没有统一标准:PHP、Python和Windows对某些细节的读取方式各不相同,因此请根据将要读取该文件的程序检查引号和转义。

示例

[database]中host = localhost、port = 5432会转换为{"database": {"host": "localhost", "port": 5432}}。后面的[database.replica]中host = replica.local会在database内添加"replica": {"host": "replica.local"}。

方言差异

INI从未形成统一标准。PHP的parse_ini_file会将key[]行转换为数组,Python的configparser会将每个值保留为文本,并支持${var}插值;Windows.ini文件则由GetPrivateProfileString读取,完全不支持嵌套。对于环境文件,请使用.env转JSON转换器。

使用方法

  1. 选择INI转JSON或JSON转INI。
  2. 粘贴文件内容。
  3. 复制结果,或将结果替换回去,以反向转换。

隐私与限制

在你的浏览器中转换,文件不会上传。

相关工具

常见问题

数字和布尔值会转换吗?

默认情况下,5432会转换为数字,true、yes和on会转换为true;取消勾选该选项后,所有值都会保留为字符串,就像Python的configparser一样。

注释会怎样处理?

注释会被删除,因为JSON不支持注释。值后的注释需要在;或#前加一个空格,因此包含#的网址会保持完整。

JSON对象数组可以转换为INI吗?

只能作为INI值中的JSON文本;INI本身没有表示这类结构的格式。

免费工具·使用在浏览器中次·无需账户