가이드

CSV를 JSON으로 변환하는 방법

CSV 텍스트를 입력하고 구분자와 헤더 처리 여부를 맞추면 JSON 표현으로 변환할 수 있습니다. 변환 후에는 헤더와 각 행의 필드 수가 맞는지 확인하세요.

도구 CSV to JSON 변환기

CSV와 JSON 변환 전에 확인할 항목

CSV 텍스트를 JSON으로 바꾸면 표처럼 정리된 행과 열을 다른 데이터 처리 단계에서 다루기 쉬운 표현으로 바꿀 수 있습니다. 이 도구는 파일 자체가 아니라 사용자가 입력한 CSV 텍스트를 변환 대상으로 삼습니다. 따라서 먼저 원본 데이터가 어떤 문자로 필드를 나누는지, 첫 행이 열 이름인지, 결과를 읽기 쉽게 표시할 필요가 있는지를 살펴보는 것이 좋습니다.

입력 데이터의 구조를 미리 확인하면 설정을 고르기 쉽습니다. 쉼표로 열을 나눈 CSV는 기본 구분자와 맞고, 세미콜론을 사용한 데이터는 구분자를 세미콜론으로 바꿔야 합니다. 첫 행이 이름, 날짜, 금액처럼 열을 설명한다면 헤더 처리를 사용할 수 있습니다. 반대로 첫 행도 다른 행과 같은 실제 값이라면 헤더로 취급하지 않는 편이 데이터의 의미에 맞습니다.

JSON 들여쓰기는 결과를 사람이 읽는 방식에 관한 설정입니다. 들여쓰기를 크게 하면 줄과 구조를 구분하기 쉬워지고, 작게 하거나 줄이면 결과를 더 간결하게 살펴볼 수 있습니다. 이 설정은 CSV의 행과 필드를 어떤 의미로 해석할지 결정하는 옵션이 아니라 결과 표시 형식을 조정하는 옵션입니다. 변환 전에는 입력 내용, 구분자, 첫 행의 역할을 한 번에 확인해 두면 불필요한 재작업을 줄일 수 있습니다.

CSV 텍스트를 JSON으로 바꾸는 순서

  1. 변환할 CSV 내용을 텍스트 입력 영역에 붙여 넣습니다. 줄바꿈을 포함한 표 형식의 내용을 그대로 넣되, 입력 칸에 공백만 남아 있지 않은지 확인합니다. 입력 내용이 실제로 CSV인지, 각 행에서 필드를 나누는 문자가 무엇인지도 함께 살펴봅니다.

  2. 필드 구분자를 입력 데이터에 맞춥니다. 필드 사이가 쉼표라면 기본 설정을 사용할 수 있습니다. 세미콜론으로 나뉜 데이터라면 구분자를 세미콜론으로 선택합니다. 구분자를 바꾸는 일은 값의 내용을 수정하는 것이 아니라 한 행 안에서 필드를 나누는 기준을 맞추는 일입니다.

  3. 첫 행의 역할을 정합니다. 첫 행에 이름이나 날짜처럼 열을 설명하는 값이 있으면 헤더 처리를 켭니다. 이 경우 첫 행이 이후 레코드의 키 이름으로 사용됩니다. 첫 행도 실제 데이터 행이라면 헤더 처리를 끕니다. 그러면 첫 행을 열 이름으로 소비하지 않고 행 데이터로 다루게 됩니다.

  4. JSON 들여쓰기 설정을 선택합니다. 기본 설정은 2칸입니다. 결과를 검토하거나 복사해 읽을 계획이면 구조가 보이는 값을 선택하고, 표시를 간결하게 보고 싶으면 더 작은 설정을 선택할 수 있습니다. 들여쓰기 선택은 결과의 시각적 배치에 영향을 줍니다.

  5. 변환을 실행한 뒤 결과의 첫 부분만 보지 말고 여러 행의 구조를 함께 확인합니다. 헤더 처리가 켜진 상태에서 헤더와 같은 수의 필드를 가진 행은 헤더 텍스트를 키로 하는 키-값 레코드로 표시됩니다. 헤더와 셀 텍스트의 앞뒤 공백은 제거되어 키와 값이 정리됩니다. 행의 필드 수가 헤더와 다르면 같은 방식의 레코드로 읽히지 않을 수 있으므로, 결과에서 해당 행이 별도의 행 값으로 보이는지 확인합니다.

  6. 결과를 다음 작업에 사용하기 전에는 구분자 선택과 헤더 설정이 원본의 구성과 맞는지 다시 대조합니다. 특히 첫 행을 헤더로 켠 뒤 실제 데이터의 첫 행이 사라진 것처럼 보인다면, 그 행이 열 이름이었는지부터 재검토해야 합니다. 반대로 열 이름이 있는 데이터를 헤더 없이 처리하면 키 대신 행 값 중심의 결과가 될 수 있으므로 목적에 맞는 설정인지 살펴봅니다.

변환 결과를 읽는 방법

결과를 해석할 때는 먼저 JSON이라는 형식보다 행의 구조를 확인하는 것이 중요합니다. 헤더 처리가 켜져 있고 한 행의 필드 수가 헤더 행과 같다면, 헤더의 각 텍스트와 해당 셀의 텍스트가 연결된 키-값 레코드로 나타납니다. 헤더와 셀의 앞뒤 공백은 제거되므로 입력 화면에서 보이는 간격과 결과의 키 또는 값이 다르게 보일 수 있습니다. 이는 값의 양끝 공백을 정리한 결과인지 살펴볼 부분입니다.

헤더 행과 필드 수가 다른 행은 별도의 의미를 가집니다. 이런 행은 헤더 키에 맞춘 레코드로 표현되지 않고 행 값으로 유지됩니다. 따라서 결과에 레코드와 행 값이 함께 나타난다면 변환이 임의로 열을 합치거나 누락했다고 단정하기보다, 해당 행의 필드 수와 헤더 행의 필드 수를 비교해야 합니다. 열 수가 일정하지 않은 원본을 그대로 변환할 때는 후속 작업에서 이 구조 차이를 처리할 수 있는지 먼저 확인하는 편이 좋습니다.

변환이 성공했는지 판단할 때는 JSON 텍스트가 표시되는지뿐 아니라 원본의 구분자와 행 구성이 결과에 맞게 반영되었는지도 봅니다. 파싱 과정에서 예외가 발생하면 JSON 출력 대신 성공하지 않은 결과로 처리됩니다. 이때는 입력의 구분 방식, 행의 작성 상태, 헤더와 데이터 행의 배열을 차례로 점검해야 합니다. 들여쓰기가 달라져도 데이터의 행과 필드가 갖는 해석 자체가 달라지는 것은 아니므로, 표시가 다르다는 이유만으로 변환 내용이 바뀌었다고 판단하지 마세요.

후속 시스템에 결과를 전달하려면 키 이름의 앞뒤 공백이 정리되었다는 점과, 필드 수가 다른 행이 별도 행 값으로 남을 수 있다는 점을 함께 고려해야 합니다. 입력을 수정한 뒤 다시 실행했다면 이전 결과와 새 결과를 구분해 확인하고, 원하는 행이 올바른 구조로 표시되는지 검토합니다. 이렇게 하면 구분자 문제와 행 구조 문제를 표시 형식 문제와 나누어 판단할 수 있습니다.

사용 예시

열 이름이 있는 간단한 회원 목록 CSV를 JSON 레코드 형태로 바꾸려는 상황입니다.

이름,나이로 된 첫 행과 민지,29로 된 다음 행을 입력하고 쉼표 구분자와 헤더 처리를 선택한 뒤 변환을 실행합니다.

헤더 처리를 켜면 결과는 첫 행의 열 이름을 키로 사용하는 키-값 JSON 레코드 형태로 나타납니다.

제한 사항

  • 빈 문자열이나 공백만 있는 입력은 성공적으로 변환되지 않습니다. CSV 파싱 중 예외가 발생하면 JSON 출력 없이 성공하지 않은 결과로 처리되며, 헤더와 필드 수가 다른 행은 헤더 키 레코드가 되지 않습니다.

자주 발생하는 오류

  • 세미콜론으로 필드를 나눈 CSV에 쉼표 구분자를 그대로 적용하면 행의 필드가 예상과 다르게 나뉠 수 있습니다. 원본에서 실제로 사용한 구분자를 확인하고 세미콜론 설정으로 다시 실행한 뒤, 헤더와 각 행의 필드 수를 비교하세요.

자주 묻는 질문

CSV 입력을 비워 둬도 JSON으로 변환되나요?

입력이 비어 있거나 공백만 있으면 변환되지 않고 거부됩니다. CSV 내용을 텍스트로 입력한 뒤 다시 실행하세요.

세미콜론으로 구분된 CSV도 변환할 수 있나요?

세미콜론으로 구분된 입력도 지원됩니다. 필드 사이에 실제로 사용한 문자가 세미콜론이면 해당 구분자를 선택하세요.

첫 번째 행을 헤더로 사용하지 않으려면 어떻게 하나요?

첫 행이 열 이름이 아니라면 헤더 처리를 끄세요. 그러면 첫 행을 키 이름으로 사용하지 않고 행 데이터로 처리합니다.

도구

CSV to JSON 변환기