programing

Excel을 사용한 CSV 파일의 따옴표 및 구분자 이스케이프

muds 2023. 4. 11. 22:42
반응형

Excel을 사용한 CSV 파일의 따옴표 및 구분자 이스케이프

Excel에서 CSV 파일을 Import하려고 합니다.;구분자로 지정되지만 일부 열에는;및/또는 따옴표.

문제는 큰따옴표를 사용하여 특정 문자열의 딜리미터를 무시할 수 있지만 문자열 내부에 큰따옴표가 있으면 첫 번째 큰따옴표까지는 딜리미터는 무시되지만 그 뒤에는 사용할 수 없다는 것입니다.확실할지 모르겠지만 설명하기가 쉽지 않아요.

예를 들어 설명하겠습니다.

내가 이 끈을 가지고 있다고 가정해봐this is a;test: 문자열 주위에 큰따옴표를 사용하여 딜리미터 = > 동작합니다.

이 문자열에 딜리미터와 큰따옴표가 포함된 경우: 내 트릭은 더 이상 작동하지 않습니다.예를 들어 문자열이 있는 경우this; is" a;test: 문자열 주위에 추가한 큰따옴표는 첫 번째 부분의 구분자(부분의 구분자)를 무시합니다.this; is올바르게 무시되지만 뒤에 큰 따옴표가 있기 때문에 Excel은 다음 구분 기호를 무시하지 않습니다.a;test일부.

최대한 명확하게 하려고 노력했는데, 무슨 문제인지 이해해 주셨으면 합니다.

CSV 파일에서 따옴표로 묶인 문자열을 읽을 때 Excel은 이중 따옴표("")의 모든 쌍을 단일 이중 따옴표("")합니다.

그렇게"this; is"" a;test"를 포함한 하나의 셀로 변환됩니다.this; is" a;test

따라서 문자열의 모든 큰따옴표를 큰따옴표 쌍으로 바꿉니다.

Excel은 CSV로 내보낼 때 이 프로세스를 되돌립니다.

여기 몇 가지 CSV가 있습니다.

a,b,c,d,e
"""test1""",""",te"st2,"test,3",test"4,test5

Excel로 Import한 후의 모습은 다음과 같습니다.

여기에 이미지 설명 입력

openOffice에서 Excel 파일을 Import하여 CSV로 내보냅니다(열은 "excel csv, utf8과 달리 ";"로 이스케이프됨).

언급URL : https://stackoverflow.com/questions/43273976/escaping-quotes-and-delimiters-in-csv-files-with-excel

반응형