데이터가 서버로 전송되지 않습니다 — 100% 내 기기에서 처리

CSV → JSON 변환

첫 행을 키로 삼아 JSON 배열로 바꿉니다. API 테스트·개발에 바로 사용하세요.

업로드 0 B — 이 페이지는 파일을 서버로 보내지 않았습니다?

개인정보 걱정 없음 — 모든 변환이 브라우저 안에서 바로 이루어져 데이터가 어디에도 업로드되지 않습니다. 고객 명단·매출·개인정보가 담긴 표도 안전하고, 인터넷을 끊어도 작동합니다.

다른 변환 사이트는 표를 서버에 올린 뒤 처리하고 일정 시간이 지나면 삭제한다고 안내합니다. 삭제될 때까지 그 데이터는 남의 서버에 그대로 남아 있습니다. 여기에는 올리는 단계 자체가 없습니다. 고객 명단·급여 대장·주민등록번호가 섞인 표처럼 새어 나가면 곤란한 데이터일수록 이 차이가 큽니다. 직접 확인하는 방법 →

다른 표 변환 도구

통합 변환기CSV → 엑셀엑셀 → CSVJSON → CSVCSV → JSONCSV 깨짐 수리마크다운 표 만들기

CSV를 JSON으로 바꾸면 숫자·날짜·빈 칸은 어떻게 바뀌나요?

API 요청 본문이나 목업 데이터를 만들 때는 표보다 JSON 배열이 편합니다. 이 도구는 CSV의 첫 행을 키로 삼아 나머지 각 행을 객체 하나로 바꾸고, 두 칸 들여쓰기로 정리한 JSON을 결과 상자에 보여 줍니다. 값의 형식을 살펴 숫자·참거짓·날짜로 바꾸되 읽는 방법이 둘 이상이면 글자로 두기 때문에, 그 규칙을 알고 쓰면 받은 뒤 손볼 일이 줄어듭니다.

조금 더 자세히

키는 첫 행에서 옵니다. 같은 이름이 두 번 나오면 두 번째는 이름_1, 세 번째는 이름_2가 되어 값이 덮어써지지 않고, 머리글이 빈 칸이면 __EMPTY, __EMPTY_1 같은 이름이 붙습니다. 값이 없는 칸은 null이 되고, 통째로 빈 행은 건너뜁니다. 파일은 UTF-8로 먼저 읽고 깨진 글자가 보이면 EUC-KR로 다시 읽어 한글을 되살립니다. 구분자는 처음 1,024자 안에서 따옴표 밖에 가장 많이 나온 쉼표·탭·세미콜론·세로줄 중 하나로 정합니다.

숫자로 읽히는 값은 JSON에서도 숫자가 됩니다. 1234, 12.5, 50%(0.5), (123)(-123), 1E5(100000)가 그렇고, 대문자 TRUE·FALSE는 true·false가 됩니다. 1,234나 1.234처럼 나라마다 뜻이 다른 값은 같은 열(없으면 파일 전체)에 12.5나 1.234,56처럼 소수점이 분명한 값이 있을 때만 그 표기로 읽고, 근거가 없으면 글자로 둡니다. 그래서 세미콜론으로 구분한 유럽·중남미식 CSV의 1.234,56은 1234.56이 됩니다. 2024-01-05, 2024/01/05처럼 연도가 앞인 날짜는 "2024-01-05" 형식의 문자열로 맞춰지고, 시각이 있으면 "2024-01-05 13:45:00"처럼 붙습니다. 우편번호 01234나 01012345678처럼 0으로 시작하는 번호, +로 시작하는 번호, 16자리 이상 정수는 값이 바뀌지 않도록 글자로 남습니다.

이렇게 쓰세요

이럴 때 유용해요

API 요청 테스트엑셀로 정리한 테스트 케이스를 JSON 배열로 바꿔 Postman 같은 도구의 요청 본문에 넣습니다.
프런트엔드 정적 데이터매장 목록·FAQ·요금표처럼 자주 바뀌지 않는 표를 JSON 파일로 만들어 화면에서 불러옵니다.
데이터베이스 시드초기 카테고리나 코드표를 JSON으로 바꿔 시드 스크립트가 읽게 합니다.
차트 라이브러리 입력설문 집계 CSV를 객체 배열로 바꿔 차트 라이브러리에 넘깁니다. 숫자가 이미 숫자 타입이라 따로 변환할 필요가 없습니다.

자주 막히는 지점

1,234 같은 숫자가 "1,234" 글자로 나왔습니다.쉼표와 점은 나라마다 뜻이 반대입니다. 1,234는 한국·미국식으로는 천이백삼십사지만 유럽·중남미 여러 나라에서는 1과 1000분의 234입니다. 같은 열이나 파일에서 어느 쪽인지 알 수 없으면 틀린 숫자를 만들지 않도록 글자로 둡니다. 12.5나 1,234.56처럼 소수점이 분명한 값이 그 열에 하나라도 있으면 그 표기로 읽습니다.
01/02/2024 같은 날짜가 글자로 나왔습니다.2월 1일인지 1월 2일인지 가릴 수 없어서입니다. 같은 열(없으면 파일 전체)에 31/12/2024처럼 앞 숫자가 12를 넘는 날짜가 있으면 일/월/연으로, 12/31/2024처럼 뒤 숫자가 12를 넘으면 월/일/연으로 읽어 "2024-02-01"처럼 맞춥니다. 그런 날짜가 없거나 두 가지가 섞여 있으면 적힌 그대로 두고, 1/2/24처럼 연도가 두 자리여도 글자로 둡니다. 2024-01-05처럼 연-월-일로 적힌 날짜는 언제나 날짜로 읽습니다.
키가 "__EMPTY"나 보고서 제목으로 나옵니다.첫 행이 머리글이 아니라 제목 줄이었던 경우입니다. 맨 위의 제목과 빈 줄을 지워 진짜 머리글이 첫 행이 되게 한 뒤 다시 변환하세요.
결과 상자 끝에 "화면 표시만 줄였습니다"라고 나옵니다.결과가 20만 자를 넘으면 화면에는 앞부분만 보여 줍니다. 결과 복사와 다운로드에는 전체가 담깁니다.

팁 결과 상자에서 따옴표로 감싼 값은 문자열, 따옴표가 없는 값은 숫자나 true·false입니다. 이 차이만 훑어봐도 타입 문제를 대부분 미리 잡을 수 있습니다.

자주 묻는 질문

첫 줄이 헤더(키)로 쓰이나요?

네. 첫 행의 값이 JSON 객체의 키가 되고, 둘째 행부터 데이터가 됩니다. 키가 중복되면 _1, _2를 붙여 구분합니다.

숫자가 문자열 "123"으로 나오지 않나요?

숫자로 인식된 값은 JSON에서도 숫자 타입(123)으로, 빈 칸은 null로 출력됩니다. 다만 우편번호 01234처럼 0으로 시작하는 번호, 16자리 이상 정수, 1,234처럼 나라마다 뜻이 다른데 파일 안에 가릴 근거가 없는 값은 틀린 숫자가 되지 않도록 문자열로 남깁니다.

한글이 깨져 보여요 / 인코딩 오류가 나요

한국 엑셀이 저장한 CSV는 대부분 EUC-KR(CP949) 인코딩입니다. 시트모아는 UTF-8로 읽다가 깨진 글자(�)가 감지되면 자동으로 EUC-KR로 다시 읽어 한글을 복원합니다. 구형 .xls 파일도 코드페이지 949로 해석을 시도합니다. 그래도 깨진다면 엑셀에서 “CSV UTF-8(쉼표로 분리)” 형식으로 다시 저장해 보세요.

데이터가 서버로 전송되지 않나요?

네. 모든 변환은 내 브라우저 안에서 실행되고 파일이 네트워크로 전송되지 않습니다. 고객 명단, 매출, 인사 자료처럼 민감한 표도 안전합니다.

무료인가요?

완전 무료입니다. 횟수·용량 제한 없고 회원가입도 필요 없습니다.