Tool Kumar 도구

JSON을 TOML로 변환

JSON 설정을 TOML 테이블로 바꿉니다. 중첩 객체는 테이블 헤더가 되고, 객체 배열은 테이블 배열이 됩니다. TOML로 표현할 수 없는 값은 출력에 달린 주석으로 확인합니다.

도구 사용 방법

  1. 유효한 JSON 설정을 붙여넣습니다.
  2. TOML 테이블과, 생략되거나 바뀐 값에 대한 주석을 검토합니다.
  3. TOML을 복사하거나 다운로드한 뒤, 애플리케이션의 설정 스키마로 검증합니다.

사용 예제

생성된 TOML에는 [profile] 테이블과 [[items]] 테이블 두 개가 있습니다. null인 note는 주석과 함께 생략됩니다.

입력

{
  "user-id": 42,
  "profile": {
    "city": "London",
    "created_at": "2026-10-14T09:00:00Z"
  },
  "items": [
    {
      "price": 12,
      "note": null
    },
    {
      "price": 12.5,
      "note": "gift"
    }
  ]
}

출력

user-id = 42

[profile]
city = "London"
created_at = "2026-10-14T09:00:00Z"

[[items]]
price = 12
# note = null (omitted: TOML has no null)

[[items]]
price = 12.5
note = "gift"

TOML 기반 스택으로 설정 옮기기

출력은 TOML을 읽는 애플리케이션이 받아들이는 데이터에 사용하고, 그 애플리케이션의 스키마를 확인합니다. Rust의 Cargo.toml과 Python의 pyproject.toml에는 정해진 테이블과 키가 필요하며, 구조를 변환한다고 해서 그런 프로젝트 파일이 만들어지지는 않습니다.

이 예시에서 각 항목은 별도의 [[items]] 테이블입니다. 첫 번째 note는 null이어서 생략됩니다. 저장하기 전에 원본과 비교합니다.

null을 보존해야 한다면, 바뀐 설정을 그냥 받아들이지 말고 JSON을 그대로 쓰거나 YAML을 사용합니다.

옵션 및 예외 사항

  • TOML에는 null 값이 없습니다. null 속성은 주석과 함께 생략되고, 배열이나 인라인 객체 안의 null 요소는 제거됩니다. 이 변환으로 데이터가 달라질 수 있습니다.
  • 부호 있는 64비트 범위를 벗어난 정수는 설명 주석과 함께 따옴표로 묶인 문자열로 기록됩니다.
  • TOML 문서는 테이블이어야 하므로, 최상위 배열이나 스칼라는 루트 이름 설정으로 정해지는 키(기본값 root) 아래로 감싸집니다.
  • 날짜처럼 보이는 값을 포함해 문자열은 문자열로 남습니다. 공백이 들어간 키는 따옴표로 묶입니다.

개인정보 보호 기본 적용

문서는 이 브라우저에만 보관됩니다. Tool Kumar는 기기 안에서 파싱, 변환, 다운로드 파일 생성을 처리하며 계정이나 업로드 과정이 필요하지 않습니다.

JSON을 TOML로 변환 자주 묻는 질문

JSON을 TOML로 변환하면 손실이 없나요?
모든 문서가 그렇지는 않습니다. TOML에는 null이 없고, 정수는 부호 있는 64비트 범위에 들어가야 합니다. 내보내기 기능은 null을 생략하고 범위를 벗어난 정수를 따옴표로 묶으며, 이러한 변경을 주석으로 설명합니다.
객체 배열은 어떻게 표현되나요?
[[items]] 같은 테이블 배열이 되며, 객체마다 테이블이 하나씩 만들어집니다.
다시 JSON으로 변환할 수 있나요?
네. 수정한 설정은 ‘TOML을 JSON으로 변환’ 페이지에서 변환합니다. 생략된 null 값은 자동으로 되살릴 수 없습니다.
최상위 JSON 배열도 TOML로 바꿀 수 있나요?
네. TOML은 문서 루트가 테이블이어야 하므로, 변환기가 배열을 루트 이름 아래로 감쌉니다.

관련 도구

TOML을 JSON으로 변환, JSON을 YAML로 변환 및 JSON 유효성 검사기.