CSV 파일의 UTF8 인코딩 대 UTF8-Bom 인코딩의 Excel 저장 동작


5

내 원래 csv 파일은 UTF8-BOM으로 인코딩됩니다. Excel이 유니 코드 charcters를 인식 할 수 있도록합니다 (UTF8로 인코딩 한 다음 Excel에서 유니 코드 문자를 인식하지 못하는 경우).

내 문제는 UTF8로 인코딩 된 CSV 파일을 사용하면 Excel에서 저장을 클릭하면 원본 서식을 유지할 수있는 팝업 옵션이 제공된다는 것입니다. 그러나 파일이 UTF8-BOM으로 인코딩 된 경우 저장을 클릭하는 즉시이며 서식을 유지할 수있는 옵션이 없습니다. 그러면 CSV 파일에 쉼표가 탭으로 바뀝니다.


1
Sidenote : Excel 2016에서 이것을 재현 할 수 있습니다.
Wouter

답변:


11

다음과 같은 일이 발생합니다.

  1. Excel은 귀하의 시스템에서 지역 설정을 검토하여 귀하의 경우 쉼표로 구성된 목록 구분 기호를 찾으십시오. 여기에서 중요한 점은 CSV 잘 정의 된 단일 형식이 아닙니다. . 어떤 구분 기호를 사용할 수 ... (편집 : 음, 실제로있다 지침 구분 기호는 쉼표로 구분되지만 바인딩 표준이 아니므로 지침을 엄격하게 준수하지 않아도됩니다.
  2. 그런 다음 Excel을 사용하여 메모리 내 데이터를 XLSX 파일로 변환합니다. 당신은 당신의 탁월한 일을합니다. 이것은 실제로 파일 형식 변환이며 Excel은 원본 파일의 인코딩이나 사용 된 구분 기호를 기억하지 않습니다.
  3. 캔지를 만들고 저장을 클릭하십시오. 그 순간에 Excel은 더 이상 CSV 파일이 아니라 XLSX 파일을 가지며이를 "CSV와 같은"것으로 다시 변환해야합니다. 인코딩은 BOM과 함께 UTF-8이어야한다는 것을 알고 있기 때문에 "유니 코드 텍스트"로 저장하도록 결정합니다 (명시 적으로 언급하지 않고이 작업을 수행함). 이 형식에서는 인코딩으로 BOM이있는 UCS-2 LE를 사용하고 구분 기호로 탭을 사용합니다. 이것은 사용자가 염두에두고있는 CSV 표준이나 원본 파일의 표준 형식이 아닙니다. 이상하고 반 직관적이긴하지만, 엄격히 말해서 틀린 것은 아닙니다.

그래서, 당신은 무엇을 할 수 있습니까?
이론적으로 CSV로 저장 옵션을 사용할 수 있어야하고 도구 -> 웹 옵션 메뉴 (다른 이름으로 저장 대화 상자에서)에서 인코딩을 UTF8로 설정할 수 있습니다. 여기서 유일한 문제는 이것이 제대로 작동하지 않는 것입니다. 제 생각에 그것은 고장난 기능입니다. 이것에 대한 자세한 내용은 스택 오버플로 : Excel에서 CSV로 UTF8 인코딩

그래서 너는 무엇을 할 수 있니? 진짜 해야 할 것?
UTF-8 BOM을 사용하고 저장하고 CSV 파일을 열어 모든 탭을 쉼표로 바꿉니다.

그리고 뭐 할까요 너 정말 그래?
Excel을 사용하여 CSV 파일을로드하고 편집하지 마십시오. 아니면 적어도 그것에 대해 더 조심해야합니다 ...
왜 안돼?
나는 (너무 길다) 여기에 관한 기사 .


원래 열었던 CSV에 BOM이 포함 된 경우에만이 Excel 형식으로의 암시 적 변환이 발생한다는 의미입니까? OP는 파일에 BOM이없는 경우 문제가되지 않는다는 것을 나타냅니다. 어쨌든 - 훌륭한 기사, 고마워요. 나는 그것을 일부 동료들에게 전달할 것입니다!
underscore_d

1
좋은 질문. 전환은 항상 발생합니다. Excel이 갑자기 텍스트를 해석하지 않고 테이블 형식으로 플랫 텍스트 파일을 갑자기 표시 할 수있는 방법은 없습니다. 구분 기호가 무엇인지 추측하고 인코딩이 무엇인지 추측합니다. OP가 나타내는대로 BOM이 없으면 인코딩 부분이 잘못됩니다. tbc ...
Wouter

1
Excel에서 UTF8이 아닌 파일을 저장하면 (이 시점에서 소스가 UTF-8인지 알 수 없음) "유니 코드 텍스트"대신 "CSV"로 저장합니다. 이것은 "다른 이름으로 저장"을 사용할 때 선택할 수있는 저장 방법입니다. 따라서이 시점에서 Excel에서는 사용자가 선택할 수 없지만 기본값은 "CSV"입니다. 이것은 "유니 코드 텍스트"가 아니고 항상 탭을 사용하는 반면, 시스템 정의 된 구분 기호를 사용할 형식입니다. 네 ... 그것은 완전히 혼란 스럽습니다. :) 다시 말해서, Excel이 데이터 구조에 대한 최선의 추측을하도록하지 말아야합니다. :) 당신이 기사를 좋아했기 때문에 기쁩니다!
Wouter
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.