본문으로 건너뛰기
Ink·tab

xlsx · csv · json 양방향

엑셀 한 장을 JSON · CSV 로 — 또는 반대로. 처리는 브라우저 안에서.

방향
파일 업로드· xlsx · xls · xlsm · ods · csv · 최대 50MB
이 영역에 파일을 끌어다 놓거나

브라우저 안에서만 처리됩니다. 네트워크 전송 없음.

언제 쓰나

거래처가 엑셀로 보낸 표를 그대로 코드 (JSON · 데이터베이스 import) 에 넣어야 할 때, 반대로 JSON · CSV 로 들고 있는 데이터를 사내 사용자에게 엑셀로 줘야 할 때.

지원 형식

  • 읽기xlsx, xls, xlsm, ods, csv. 한 번에 한 파일.
  • 쓰기xlsx (단일 시트). 시트 이름은 직접 지정.

셀 타입

  • 숫자 — 그대로. 정수·소수·과학 표기 모두 보존.
  • 날짜 — JSON 출력 시 ISO 8601 문자열 (예: 2026-04-29T00:00:00.000Z). 엑셀 날짜 일련번호가 아니라 round-trip 가능한 표기.
  • 빈 셀 — JSON 에서 null, CSV 에서는 빈 칸.
  • 수식 — 마지막으로 계산된 값만 읽습니다. 수식 자체는 보존되지 않음.

첫 행 헤더 옵션

JSON 출력 시 토글로 동작.

  • 켜기 (기본) — 1행을 키로 사용. { "id": ..., "name": ... } 형식.
  • 끄기 — 자동으로 col_1, col_2, ... 키 부여. 헤더 행이 없는 raw data dump 일 때.

큰 파일

50MB 까지 받습니다. 10MB 이상이면 파싱 중 잠깐 탭이 멈출 수 있고, 100MB 이상은 노트북에서 권장하지 않습니다 (브라우저가 응답 없음 처리).

보안

거래처 매출 표 · 내부 인사 데이터 · 고객 명단이 들어 있는 xlsx 라도 페이지 밖으로 나가지 않습니다. 파일은 ArrayBuffer 로만 메모리에 잠시 머물고 페이지를 닫으면 사라집니다.

안 맞는 경우

  • 수식 그대로 보존 — 본 도구는 값만. xlsx 의 수식·매크로·차트· 조건부 서식이 살아 있어야 한다면 엑셀 자체를 쓰세요.
  • 여러 시트 동시 출력 — 한 번에 한 시트만 변환. 여러 시트면 시트별로 바꿔 가며 다운로드.
  • xlsx → pdf 같은 시각 변환 — 표 모양·서식·페이지 레이아웃이 필요한 경우엔 데스크탑 엑셀의 PDF export.

엑셀 파일은 브라우저 안에서만

거래처 매출 표 · 내부 인사 데이터 · 고객 명단이 들어 있는 xlsx 라도 안전합니다. SheetJS 라이브러리는 클라이언트 번들로 동적 로드되며, 파일은 ArrayBuffer 로만 메모리에 잠시 머물고 페이지를 닫으면 사라집니다.

자주 묻는 질문

어떤 형식을 지원하나요?
읽기는 xlsx · xls · xlsm · ods · csv 5 종, 쓰기는 xlsx 1 종 (단일 시트). 시트별로 첫 행 키 사용 여부를 토글하면 JSON 출력 모양이 바뀝니다.
한글 셀이 깨지지 않나요?
엑셀이 만든 xlsx 안의 한글은 자동으로 UTF-8 로 디코드됩니다. EUC-KR / CP949 csv 는 SheetJS 의 인코딩 감지가 항상 정확하지 않으니, csv 라면 UTF-8 로 저장된 것을 쓰는 편이 안전합니다. 출력 JSON · CSV 는 UTF-8.
큰 파일도 열 수 있나요?
50MB 까지 받습니다. 10MB 이상은 브라우저 메모리에 부담이라 파싱 중 잠깐 멈출 수 있고, 노트북 환경에서는 100MB 이상은 권장하지 않습니다.
여러 시트가 있는 파일은 어떻게 처리되나요?
파싱 후 시트별 탭이 나타납니다. 한 번에 한 시트만 출력 (JSON · CSV) 으로 변환되고, 다른 시트로 옮기면 출력이 즉시 갱신됩니다.
JSON 출력에서 빈 셀은 어떻게 표시되나요?
빈 셀은 `null` 로 통일됩니다 (JSON 표준). 날짜 셀은 ISO 8601 문자열 (예: `2026-04-29T00:00:00.000Z`) 로 변환되어 round-trip 가능.