파일 형식을 바꾸어도 열의 의미를 유지하세요
스프레드시트로 내보낸 데이터에는 데이터베이스와 같은 형식 정보가 담겨 있지 않습니다. 007이라는 값은 숫자 일곱이 아니라 직원 코드일 수 있습니다. 긴 숫자 ID는 일반적인 브라우저 코드가 쓰는 정확한 정수 범위를 넘을 수 있습니다. 그래서 CSV를 JSON으로 변환할 때는 모든 셀을 문자열로 유지합니다. 빈 셀은 빈 문자열로 남고, true나 null 같은 단어는 다른 곳에서 의도적으로 바꾸기 전까지 텍스트로 유지됩니다.
필드에 쉼표, 따옴표 또는 줄바꿈이 있을 때는 CSV의 따옴표 처리가 중요합니다. 따옴표로 묶인 주소는 물리적으로 두 줄에 걸쳐 있어도 하나의 레코드에 속할 수 있습니다. 이 구문 분석기는 그 차이를 추적하고, 셀을 엉뚱한 머리글로 밀어 넣는 대신 열 개수가 일치하지 않는다고 알려 줍니다. 머리글은 고유해야 하고 비어 있으면 안 됩니다. 머리글 행이 없으면 도구가 column_1, column_2 등의 이름을 붙입니다.
반대 방향에서는 JSON이 비어 있지 않은 객체 배열이어야 합니다. 내보낼 때는 객체들의 키를 처음 나타난 순서대로 합친 목록을 사용합니다. 없는 필드는 빈 셀이 되고, 명시적인 JSON null은 텍스트 null이 됩니다. 중첩된 배열과 객체는 따옴표로 묶인 하나의 셀 안에 압축된 JSON으로 들어갑니다. 검사에는 유용하지만, CSV로는 원래 객체 구조로 완벽하게 되돌리는 데 필요한 모든 구분을 보존할 수 없습니다.
스프레드시트 애플리케이션은 등호로 시작하는 셀을 수식으로 해석하기도 합니다. 기본 보호 기능은 수식처럼 보이는 셀 앞에 아포스트로피를 붙이고 몇 개의 셀이 바뀌었는지 알려 줍니다. 이는 음수 값에도 영향을 주며 열 이름에도 적용됩니다. 받는 애플리케이션에 정확한 원본 텍스트가 필요할 때만 이 기능을 끄고, 그 애플리케이션이 파일을 어떻게 가져오는지 확인하세요. 미리보기에는 이 내보내기 보호가 적용되기 전의 원본 값이 표시됩니다.