CSV → JSON 변환기

CSV 텍스트를 보기 좋은 JSON으로 즉시 변환합니다.

// about

도구 소개

엑셀 표 형태의 CSV 데이터를 웹에서 사용하는 JSON으로 바로 변환하거나, 반대로 JSON을 CSV로 바꿔 줍니다. 엑셀과 웹 프로그램 사이에서 데이터를 주고받을 때 유용합니다.

사용 방법

  1. 변환하려는 CSV 텍스트를 상자에 붙여넣으세요.
  2. 구분자(기본값: 쉼표)를 확인하세요.
  3. 변환 버튼을 누르고 결과 JSON을 복사해 가세요.

이 도구를 찾는 이유

  • 엑셀 수치 표와 웹 서비스 간의 데이터 교환이 쉬워집니다.
  • 쉼표(,) 외에 세미콜론(;) 구분자도 손쉽게 지원합니다.
  • 프로그램 설치 없이 웹에서 바로 변환 결과를 복사할 수 있습니다.

자주 묻는 질문 (FAQ)

CSV 파일이 무엇인가요?

CSV는 각 항목을 쉼표(,)로 구분한 단순한 텍스트 표 형식입니다.

CSV 첫 줄에 제목(헤더)이 있어야 하나요?

첫 행에 열 이름이 있으면 JSON의 속성 이름으로 깔끔하게 매핑됩니다.

구분자에 어떤 문자를 입력해야 하나요?

일반적인 CSV는 쉼표(,)를 쓰며, 유럽형 엑셀 등에서는 세미콜론(;)을 쓰기도 합니다.

가이드 · 데이터 · 4분 읽기

CSV와 JSON 비교: 언제 무엇을 쓰고, 변환할 때 무엇을 조심할까

엑셀에서 내보낸 고객 목록을 API로 보내야 하거나, API 응답을 엑셀로 열어야 할 때 CSV와 JSON 변환이 필요합니다. 두 형식의 차이를 알면 변환 중 데이터가 망가지는 일을 막을 수 있습니다.

CSV(Comma-Separated Values)는 표입니다. 첫 줄이 열 이름이고 이후 각 줄이 한 행이며, 값은 쉼표로 구분합니다. 모든 행이 같은 열을 갖는 평평한 데이터를 담기에 가장 단순하고 가볍습니다.

name,city,score
Kim,Seoul,92
Lee,Busan,85

[
  {"name": "Kim", "city": "Seoul", "score": 92},
  {"name": "Lee", "city": "Busan", "score": 85}
]
CSV와 JSON의 구조적 차이, 엑셀에서 CSV 한글이 깨지는 이유, 쉼표와 따옴표 처리 규칙, 중첩 데이터를 변환할 때의 주의점을 정리합니다.
가이드 읽기 →
AI로 직접 만들기

이 도구를 AI로 직접 만들어 보세요

나만의 버전이 필요하다면 아래 작업지시 프롬프트를 AI 채팅에 붙여 넣거나, 스킬 파일을 AI 코딩 에이전트에 저장하세요. 저희가 이 도구를 만들 때 정리한 기능, 예외 상황, 테스트 케이스가 그대로 담겨 있습니다.

AI 작업지시 프롬프트

Claude, ChatGPT, Gemini 같은 AI 채팅에 그대로 붙여 넣으세요.

당신은 숙련된 풀스택 웹 개발자입니다. 아래 요구사항에 맞춰 "CSV → JSON 변환기" 웹 도구를 만들어 주세요.

## 목표

CSV와 JSON을 서로 변환하는 도구를 만든다.

## 핵심 기능

- CSV → JSON(객체 배열), JSON → CSV 양방향
- 구분자 자동 감지(쉼표, 세미콜론, 탭)
- 첫 줄 헤더 사용 여부
- 숫자·불리언 자동 타입 변환 옵션
- 엑셀용 UTF-8 BOM 포함 CSV 다운로드

## 입력

- CSV 또는 JSON 텍스트/파일
- 구분자, 헤더, 타입 변환 옵션

## 출력

- 변환 결과
- 행·열 개수

## 예외 상황과 처리 규칙

- RFC 4180 규칙: 따옴표 안 쉼표·줄바꿈·이중 따옴표 처리
- 앞자리 0이 있는 값(우편번호)은 문자열 유지
- JSON의 중첩 객체는 점 표기(user.name) 열로 평탄화
- 행마다 열 개수가 다르면 경고

## 구현 조건

- 서버 없이 브라우저에서 동작하는 단일 페이지(HTML, CSS, JavaScript)로 만들고, 입력 데이터를 외부로 전송하지 마세요.
- 모바일에서도 쓰기 편한 반응형 UI로 만들고, 입력 요소에는 레이블을 달아 키보드로도 조작할 수 있게 해 주세요.
- 결과에는 '복사' 버튼을 달고, 잘못된 입력에는 이해하기 쉬운 한국어 오류 메시지를 보여 주세요.
- 핵심 로직은 UI와 분리된 함수로 작성해 단위 테스트를 할 수 있게 해 주세요.

## 완료 기준 (테스트 케이스)

- '"Seoul, Korea"'가 하나의 값으로 유지
- '01234'가 숫자로 바뀌지 않음
- 변환 후 다시 변환하면 행 수 동일

먼저 구현 계획을 5줄 이내로 설명한 다음 전체 코드를 작성하고, 마지막에 위 테스트 케이스를 확인하는 방법을 알려 주세요.

스킬 (SKILL.md)

Claude Code 같은 AI 코딩 에이전트에서 .claude/skills/build-csv-json-converter/SKILL.md 경로로 저장하면, 이 도구를 만들거나 고칠 때마다 다시 쓸 수 있습니다.

---
name: build-csv-json-converter
description: CSV → JSON 변환기 도구를 새로 만들거나 수정할 때 사용합니다. CSV와 JSON을 서로 변환하는 도구를 만든다.
---

# CSV → JSON 변환기 만들기

## 목표

CSV와 JSON을 서로 변환하는 도구를 만든다.

## 작업 순서

1. 아래 필수 기능, 입력, 출력을 확인하고 빠진 정보가 있으면 먼저 질문합니다.
2. 핵심 로직을 UI와 분리된 순수 함수로 구현합니다.
3. 검증 목록의 테스트 케이스로 로직을 확인합니다.
4. 입력 폼, 결과 영역, 복사 버튼을 갖춘 반응형 UI를 만듭니다.
5. 규칙에 적힌 예외 상황을 하나씩 재현해 보고 오류 메시지를 다듬습니다.

## 핵심 기능

- CSV → JSON(객체 배열), JSON → CSV 양방향
- 구분자 자동 감지(쉼표, 세미콜론, 탭)
- 첫 줄 헤더 사용 여부
- 숫자·불리언 자동 타입 변환 옵션
- 엑셀용 UTF-8 BOM 포함 CSV 다운로드

## 입력

- CSV 또는 JSON 텍스트/파일
- 구분자, 헤더, 타입 변환 옵션

## 출력

- 변환 결과
- 행·열 개수

## 규칙

- RFC 4180 규칙: 따옴표 안 쉼표·줄바꿈·이중 따옴표 처리
- 앞자리 0이 있는 값(우편번호)은 문자열 유지
- JSON의 중첩 객체는 점 표기(user.name) 열로 평탄화
- 행마다 열 개수가 다르면 경고
- 서버 없이 브라우저에서 동작하는 단일 페이지(HTML, CSS, JavaScript)로 만들고, 입력 데이터를 외부로 전송하지 마세요.

## 검증

- [ ] '"Seoul, Korea"'가 하나의 값으로 유지
- [ ] '01234'가 숫자로 바뀌지 않음
- [ ] 변환 후 다시 변환하면 행 수 동일

AI에게 맡길 때 팁

  • 첫 줄에 사용 중인 기술(예: React, Vue, 순수 HTML)을 적으면 프로젝트에 맞는 코드를 받을 수 있습니다.
  • 코드를 받기 전에 목록의 테스트 케이스를 실제로 실행하고 결과를 보여 달라고 요청하세요.
  • 실제 비밀번호, 고객 데이터, API 키는 프롬프트에 넣지 말고 예시 값으로 바꿔 쓰세요.