텍스트 → JSON 변환기
일반 텍스트 줄을 JSON 배열, 객체로 변환하거나 키:값 쌍을 파싱합니다. 다양한 변환 모드를 지원합니다.
이 도구 소개
텍스트를 JSON으로 변환하는 이 도구는 구조화되지 않은 텍스트를 유효한 JSON 형식으로 변환하여 일반 텍스트 데이터를 기계가 읽을 수 있는 구조로 쉽게 변환합니다. 설정 파일, API 데이터, 또는 간단한 목록을 작업 중이든 이 도구는 JSON 구문을 수동으로 작성할 필요를 제거하고 텍스트 기반 정보를 애플리케이션과 API가 직접 사용할 수 있는 형식으로 빠르게 변환하도록 돕습니다.
이 변환기를 사용하려면 텍스트를 붙여넣고 데이터 구조와 일치하는 변환 모드를 선택하면 됩니다. 이 도구는 쉼표로 구분된 항목의 배열 형식, 키-값 쌍(콜론 또는 등호 구분 기호 사용)의 객체 표기법, 각 줄이 배열 요소가 되는 줄별 변환을 지원합니다. 적절한 모드를 선택하고 변환을 클릭하면 도구는 적절하게 형식화된 JSON을 생성하여 프로젝트에서 바로 복사하여 사용할 수 있습니다.
이 도구는 레거시 텍스트 기반 데이터를 마이그레이션하는 개발자, 테스트용 JSON 픽스처를 만드는 경우, 또는 구문을 수동으로 작성하지 않고 구성 구조를 빠르게 프로토타이핑하는 경우에 매우 유용합니다. 컨텐츠 제작자, 분석가 및 구조화된 데이터로 작업하는 모든 사람은 반복적인 JSON 형식 작업을 제거함으로써 워크플로우를 가속화할 수 있습니다.
자주 묻는 질문
코드 구현
# Text to JSON Conversion Utilities
import json
def lines_to_array(text: str, skip_empty: bool = True, trim: bool = True) -> list:
lines = text.split("\n")
if trim:
lines = [l.strip() for l in lines]
if skip_empty:
lines = [l for l in lines if l]
return lines
def lines_to_objects(text: str, key: str = "text", skip_empty: bool = True) -> list:
lines = lines_to_array(text, skip_empty)
return [{key: line} for line in lines]
def keyvalue_to_object(text: str, trim: bool = True) -> dict:
result = {}
for line in text.split("\n"):
if trim:
line = line.strip()
for sep in [":", "="]:
idx = line.find(sep)
if idx > 0:
k = line[:idx].strip()
v = line[idx+1:].strip()
result[k] = v
break
return result
def csv_to_json(text: str, trim: bool = True) -> list:
lines = text.split("\n")
if not lines:
return []
headers = [h.strip() if trim else h for h in lines[0].split(",")]
result = []
for line in lines[1:]:
if not line.strip():
continue
values = [v.strip() if trim else v for v in line.split(",")]
result.append({headers[i]: values[i] if i < len(values) else "" for i in range(len(headers))})
return result
# Examples
text = "apple\nbanana\ncherry"
print(json.dumps(lines_to_array(text), indent=2))
kv_text = "name: Alice\nage: 30\ncity: London"
print(json.dumps(keyvalue_to_object(kv_text), indent=2))
csv_text = "name,age,city\nAlice,30,London\nBob,25,Paris"
print(json.dumps(csv_to_json(csv_text), indent=2))Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.