본문으로 건너뛰기
🛠️ToolsShed

TOML ↔ JSON 변환기

TOML과 JSON 형식을 상호 변환하고 TOML 구문을 검증합니다.

이 도구 소개

TOML(Tom's Obvious, Minimal Language)과 JSON은 소프트웨어 개발에서 광범위하게 사용되는 두 가지 설정 및 데이터 형식입니다. TOML은 Rust 프로젝트, Python 도구, 최신 애플리케이션 설정에서 흔히 볼 수 있는 인간친화적인 형식이며, JSON은 웹 API와 웹 애플리케이션에서 데이터를 교환하는 보편적인 표준입니다. 이 두 형식을 상호 변환하는 것은 프로젝트 마이그레이션, 서로 다른 시스템 간 구성 공유, 특정 형식을 요구하는 도구와의 작업 시 필수적입니다.

이 컨버터를 사용하려면 TOML 또는 JSON 콘텐츠를 입력 영역에 붙여넣으면 도구가 형식을 자동으로 감지하여 다른 형식으로 변환합니다. 또한 입력 데이터의 구문을 검증하고 변환 전에 오류를 보고합니다. 타사 라이브러리 통합, 환경 구성 관리, API용 데이터 표준화, 설정 파일 구문 확인 시 이 도구를 사용하세요.

이 컨버터는 중첩된 구조, 배열, 인라인 테이블, 날짜 및 부동소수점 숫자를 포함한 모든 TOML 및 JSON 데이터 형식을 지원합니다. TOML 주석은 변환 중에 보존되지 않으므로 주석 보존이 중요한 경우 버전 제어 또는 별도 문서화를 고려하세요. 이 도구는 개발자, DevOps 엔지니어, 여러 설정 형식을 다루는 모든 사람에게 이상적입니다.

자주 묻는 질문

코드 구현

# Python 3.11+ has tomllib built-in (read-only)
# For older versions: pip install tomli
# For writing: pip install tomli-w

import tomllib  # Python 3.11+
# import tomli as tomllib  # Python < 3.11

toml_text = """
[package]
name = "my-app"
version = "1.0.0"
authors = ["Alice <alice@example.com>"]

[dependencies]
requests = ">=2.28.0"
flask = { version = ">=3.0", optional = true }

[[server]]
host = "web1.example.com"
port = 8080

[[server]]
host = "web2.example.com"
port = 8081
"""

# Parse TOML string
data = tomllib.loads(toml_text)
print(data["package"]["name"])      # my-app
print(data["dependencies"])          # {'requests': '>=2.28.0', ...}
print(data["server"])                # [{'host': 'web1...', 'port': 8080}, ...]

# Parse from file
with open("pyproject.toml", "rb") as f:  # Must open in binary mode!
    config = tomllib.load(f)

# Writing TOML (requires tomli-w or tomllib doesn't support write)
# pip install tomli-w
import tomli_w
output = tomli_w.dumps({"key": "value", "count": 42})
print(output)
# key = "value"
# count = 42

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.