모든 가이드
데이터

쉼표, 따옴표, 줄바꿈이 포함된 CSV 셀

두 개의 레코드, 두 줄 이상. 쉼표와 줄바꿈을 셀 안에 유지하세요.

CSV 셀에는 쉼표, 큰따옴표, 줄 바꿈이 포함될 수 있습니다. 이것이 파일이 깨졌다는 뜻은 아닙니다. 셀에 인용 부호가 필요하다는 의미이며, 텍스트 줄 수를 세는 것만으로는 레코드 수를 알 수 없습니다.

샘플 CSV를 다운로드하세요. CSV, JSON & YAML 변환기를 열고 업로드하세요. 이 파일에는 두 개의 레코드가 있지만, 한 캡션은 두 줄에 걸쳐 있습니다:

name,caption
"Lee, Sam","First line
Second line"
Mina,"She said ""hello""."

행을 나누기 전에 인용 부호를 읽기

"Lee, Sam"의 쉼표는 이름에 속합니다. First line와 Second line 사이의 줄 바꿈은 캡션에 속합니다. 둘 다 주변의 큰따옴표 안에 있으므로 새 필드나 레코드를 시작하지 않습니다.

인용된 셀 안에서 연속된 두 개의 큰따옴표는 하나의 큰따옴표를 나타냅니다. 그래서 "She said ""hello""."는 텍스트 She said "hello".가 됩니다. 바깥쪽 큰따옴표와 두 배로 된 내부 큰따옴표는 CSV 문법이며, 값에 포함할 추가 문자가 아닙니다. 이 규칙은 RFC 4180의 CSV 형식 설명에 나와 있습니다.

원시 텍스트를 쉼표나 줄 바꿈마다 나누면 이 구분을 놓칩니다. 모든 큰따옴표를 제거하는 것도 해결책이 아닙니다. 이름 안의 쉼표가 열 구분자로 바뀌기 때문입니다.

샘플 변환 및 값 확인

  1. 샘플을 업로드하거나 위 CSV를 입력 편집기에 붙여넣으세요.
  2. 원본을 CSV로, 대상을 JSON으로 설정하세요.
  3. 옵션에서 첫 번째 행에 헤더 포함은 켜고, CSV에서 숫자와 부울 감지는 끄세요. 자동 감지가 잘못되었다면 CSV 구분 기호를 쉼표로 설정하세요.
  4. 코드 결과를 확인하세요. 이름과 캡션이 포함된 두 개의 객체가 있어야 합니다. 표 탭에서 두 행과 열을 빠르게 확인할 수 있습니다.

다운로드한 샘플은 CRLF 줄 끝을 사용하며, 첫 캡션 안의 줄 바꿈도 포함합니다. JSON 출력에는 다음이 포함됩니다:

[
  {
    "name": "Lee, Sam",
    "caption": "First line\r\nSecond line"
  },
  {
    "name": "Mina",
    "caption": "She said \"hello\"."
  }
]

JSON은 캐리지 리턴과 줄 바꿈을 이스케이프 시퀀스로 표시하지만, 문자열 내 줄 바꿈을 나타냅니다. 이 페이지의 예제를 붙여넣으면 클립보드가 LF만 포함할 수 있으니 \n이 \r\n 대신 보일 수 있습니다. CRLF 버전의 확인된 JSON 출력을 다운로드하세요.

되돌리기 테스트

결과를 입력으로 사용을 선택해 JSON을 다시 CSV로 변환하세요. 모든 열을 선택한 상태로 두세요. 내보낸 CSV는 쉼표, 여러 줄 캡션, 큰따옴표를 다시 인용합니다. 다시 JSON으로 변환해도 두 레코드와 모든 필드 값이 보존됩니다.

이는 데이터 비교이며, 모든 CSV 파일이 바이트 단위로 완전히 동일하게 돌아온다는 보장은 아닙니다. 인용 부호, 마지막 줄 바꿈, 구분자는 다르게 기록될 수 있습니다. 도구는 기본적으로 스프레드시트 수식과 비슷한 값을 보호하며, 앞에 작은따옴표를 추가할 수 있습니다. 샘플에는 그런 값이 없으니, 신뢰할 수 없는 내보내기를 스프레드시트에서 열 때는 이 보호 기능을 켜 두세요.

쉼표가 실제로 오류인 경우

잘못된 예제는 이름 안 쉼표를 인용하지 않았습니다. 두 열 헤더와 세 필드 행이 있어 변환기가 불일치를 거부합니다. 이름 전체를 "Lee, Sam"처럼 인용해 수정하세요. 이름 일부를 삭제하지 마세요.

결과 기록에는 2026년 10월 26일의 예상 값, 되돌리기 검사, 거부된 입력 결과가 포함되어 있습니다. 이 작은 테스트는 변환기 파서를 사용하며, 모든 스프레드시트 CSV 가져오기 규칙을 테스트하지는 않습니다.