구분 문자 파일 변환기

유럽에서 내보내는 데이터는 세미콜론으로 구분되는 경우가 많고(쉼표가 소수점 기호로 쓰이기 때문입니다), 오래된 데이터 웨어하우스는 탭을, Unix 로그는 파이프를 선호하며, 나머지는 대부분 CSV를 사용합니다. 잘못된 구분 형식을 엉뚱한 도구에 붙여넣으면 가져오기 작업이 예상치 못한 방식으로 깨질 수 있습니다. 이 변환기는 따옴표로 감싼 필드를 하나의 단위로 읽기 때문에 필드 안의 원본 구분 문자도 안전하게 변환됩니다.

구분 문자를 변환하는 방법

  1. 1

    텍스트를 붙여넣으세요

    CSV, TSV, SSV 또는 PSV 텍스트를 편집기에 붙여넣으세요. 이 변환기는 업로드된 파일이 아닌 붙여넣은 텍스트를 처리합니다.

  2. 2

    원본과 대상 구분 문자를 선택하세요

    양쪽 모두에 대해 쉼표, 탭, 세미콜론, 파이프 또는 사용자 지정 문자를 선택하세요. 기본 원본은 쉼표, 기본 대상은 탭입니다.

  3. 3

    변환하세요

    변환을 실행하면 대상 구분 문자로 바뀐 결과가 아래에 표시됩니다.

  4. 4

    결과를 복사하세요

    변환된 텍스트를 복사해 스프레드시트, 데이터베이스 또는 스크립트에 붙여넣으세요.

자주 만나게 되는 네 가지 구분 문자

형식 구분 문자 주로 쓰이는 곳
CSV 쉼표 미국의 스프레드시트와 대부분의 웹 내보내기 기본값
TSV 과학 데이터셋, 웨어하우스 추출, Google Sheets 붙여넣기
SSV 세미콜론 유럽식 Excel(쉼표가 소수점), SAP 출력
PSV 파이프 Unix 로그 파이프라인, 금융 데이터 피드, 오래된 메인프레임 덤프

따옴표 처리 방식

RFC 4180은 거의 모든 도구가 사용하는 일반적인 CSV 따옴표 규칙을 정의합니다.

  1. 구분 문자, 줄 바꿈 또는 따옴표를 포함한 필드는 큰따옴표로 감싸야 합니다.
  2. 따옴표로 감싼 필드 안에서 리터럴 큰따옴표는 두 번 반복해 이스케이프합니다: "그녀가 ""안녕""이라고 말했다".
  3. 따옴표로 감싸지 않은 필드에서는 앞뒤 공백이 그대로 유지됩니다.

이 변환기는 따옴표로 감싼 필드를 하나의 단위로 읽으므로, 필드 안의 원본 구분 문자로 인해 행이 나뉘지 않습니다. 출력은 따옴표를 새로 추가하지 않고 필드를 대상 구분 문자로 이어 붙이므로, 대상 구분 문자를 포함한 필드는 추가 열이 됩니다. 변환 전에 이런 필드를 확인하고 따옴표로 감싸세요.

알아 두어야 할 제한: 각 줄은 개별적으로 변환되므로 여러 줄에 걸친 따옴표 필드는 여러 행으로 나뉩니다.

흔한 함정

  • 유럽식 소수점의 쉼표. 세미콜론으로 구분된 유로 데이터의 가격 필드 “1,50”은, 소수점 기호를 먼저 바꾸지 않고 쉼표 구분 형식으로 변환하면 “1”과 “50”으로 나뉘어 버립니다.
  • CRLF와 LF. 출력은 항상 LF 줄 바꿈을 사용합니다. 받는 쪽 시스템이 CRLF를 요구한다면(Windows의 Excel), 이 단계 후에 줄 바꿈 코드를 변환하세요.
  • UTF-8의 BOM. Excel이 UTF-8 CSV를 올바르게 열려면 바이트 순서 표시(BOM)가 필요합니다. 이 도구는 BOM을 추가하거나 제거하지 않으므로, 필요하면 편집기에서 처리하세요.
  • 마지막 빈 열. 구분 문자로 끝나는 파일은 마지막에 빈 열이 생깁니다. 이를 제거하는 파서도 있고 유지하는 파서도 있으니 어느 쪽이든 확인하세요.

  • 쉼표가 포함될 수 있는 데이터에는 TSV를 사용하세요. 실제 내용에 탭이 들어가는 경우는 드뭅니다.
  • 확신이 서지 않으면 원본을 따옴표로 감싼 채로 두세요. 원본 구분 문자를 포함해도 따옴표 필드는 깨끗하게 변환됩니다.
  • 기본 조합인 쉼표에서 탭으로는 대부분의 CSV를 TSV로 한 번에 변환할 수 있습니다.

자주 묻는 질문

아니요. 필드 안의 쉼표가 큰따옴표로 감싸져 있다면 문제없습니다. 변환기는 따옴표 필드를 하나의 단위로 읽으므로, 대상 구분 문자로 행을 이어 붙여도 안의 쉼표는 유지됩니다. 주의: 대상 구분 문자를 포함한 필드는 출력에서 따옴표가 붙지 않아 추가 열로 나뉩니다.

Windows의 Excel은 기본적으로 CRLF를 씁니다. Python은 newline='' 플래그로 파일을 바이너리 모드로 열지 않는 한 LF를 씁니다. 이 변환기의 출력은 항상 LF이므로, 받는 쪽에서 CRLF를 기대한다면 나중에 줄 바꿈 코드를 변환하세요.

붙여넣은 텍스트는 한 번의 요청으로 처리되므로, 실질적 한도는 브라우저와 서버가 요청 한 번에 받아들이는 양입니다. 아주 큰 파일은 여러 부분으로 나누어 변환하세요.

네. 붙여넣은 텍스트는 변환을 수행하기 위해 서버로 전송됩니다. 저장되지 않으며 페이지 링크에 추가되지도 않습니다.

관련 도구

이 도구는 다른 언어로도 제공됩니다