web-development-kb-ko.site

유니 코드, 유니 코드 Big Endian 또는 UTF-8? 차이점은 무엇입니까? 어떤 형식이 더 낫습니까?

메모장에 영어가 아닌 텍스트가있는 텍스트 파일 을 저장하려고하면 유니 코드 중에서 선택할 수있는 옵션이 표시됩니다. 유니 코드 빅 엔디안TF-8. 이러한 형식의 차이점은 무엇입니까?

내가 아니 이전 OS 버전 또는 앱과의 하위 호환성을 원하지 않는다고 가정하고 하지 않습니다 파일 크기에 신경 쓰는데, 어떤 형식이 더 낫습니까?

(텍스트는 다른 언어 외에도 중국어 또는 일본어와 같은 언어로되어 있다고 가정합니다.)

참고 : 아래 답변과 주석에서 메모장 용어에서 유니 코드는 UTF-16 (리틀 엔디안), 유니 코드 빅 엔디안은 UTF-16 (빅 엔디안), UTF-8은 잘 UTF 인 것 같습니다. -8.

19
Ashwin Nanjappa

Dunno. 톱이나 망치 중 어느 것이 더 낫습니까? :-)

유니 코드는 UTF가 아님

기사에는 당면한 주제와 좀 더 관련이있는 내용이 있습니다.

  • UTF-8은 ASCII 세트 (가변 길이 표현 : 각 문자는 1 ~ 4 바이트로 표현되고 ASCII 문자는 모두 적합 함)의 문자 표현을위한 바이트 크기 최소화에 중점을 둡니다. 1 바이트). Joel이 말했듯이 :

"그 모든 0을보세요!" 그들은 미국인이기 때문에 U + 00FF 이상의 코드 포인트를 거의 사용하지 않는 영어 텍스트를보고 있다고 말했습니다. 또한 그들은 보존을 원했던 캘리포니아의 진보적 인 히피족이었습니다. 그들이 텍사스 사람이라면 바이트 수를 두 배로 늘리는 것은 신경 쓰지 않았을 것입니다. 하지만 캘리포니아의 겁쟁이들은 스트링에 필요한 스토리지 양을 두 배로 늘린다는 생각을 견딜 수 없었습니다.

  • UTF-32는 모든 문자에 4 바이트를 사용하여 완전성과 고정 길이 표현에 중점을 둡니다. 유니 코드 코드 포인트를 4 바이트로 직접 매핑하는 가장 간단한 번역입니다. 분명히 크기 효율적이지 않습니다.

  • UTF-16은 대부분 2 바이트를 사용하지만 BMP (Basic Multilingual Plane)에 포함되지 않은 특정 문자를 나타 내기 위해 문자 당 2 * 2 바이트로 확장되는 절충안입니다.

또한 참조 모든 소프트웨어 개발자는 절대적으로 유니 코드 및 문자 집합에 대해 반드시 알아야합니다 (변명 없음!)

19
Jason Baker

유럽 ​​언어의 경우 UTF-8이 더 작습니다. 동양 언어의 경우 그 차이는 분명하지 않습니다.

둘 다 가능한 모든 유니 코드 문자를 처리하므로 호환성에 차이가 없어야합니다.

4
Mark Ransom

생각보다 유니 코드 문자 인코딩이 더 많습니다.

  • UTF 8

    UTF-8 인코딩은 1-4 바이트 범위의 가변 너비이며 각 바이트의 상위 비트는 제어 비트로 예약되어 있습니다. 첫 번째 바이트의 선행 비트는 해당 문자에 사용 된 총 바이트 수를 나타냅니다. 문자 코드 포인트의 스칼라 값은 비 제어 비트의 연결입니다. 이 표에서 x는 유니 코드 값의 가장 낮은 8 비트를 나타내고 y는 다음 상위 8 비트를 나타내고 z는 그보다 높은 비트를 나타냅니다.

    Unicode              Byte1     Byte2     Byte3     Byte4
    U+0000-U+007F       0xxxxxxx            
    U+0080-U+07FF       110yyyxx  10xxxxxx          
    U+0800-U+FFFF       1110yyyy  10yyyyxx  10xxxxxx    
    U+10000-U+10FFFF    11110zzz  10zzyyyy  10yyyyxx  10xxxxxx
    
  • UCS-16
  • UCS-16BE
  • UCS-16LE

  • UTF-16
  • UTF-16BE
  • UTF-16LE

  • UTF-32
  • UTF-32-BE
3
Brad Gilbert

"유니 코드"는 "UTF-16"의 또 다른 용어로, 유니 코드 문자 집합을 문자 당 16 비트로 인코딩합니다. UTF-8은 문자 당 8 비트로 인코딩합니다.

두 경우 모두 오버플로가 다른 16 비트 또는 8 비트에 할당됩니다.

1
John Saunders

텍스트 파일과 같은 작은 파일의 유일한 장점은 결과 파일 크기입니다. UTF-8은 일반적으로 더 작은 파일을 생성합니다. 그러나이 차이는 중국어/일본어 텍스트에서는 덜 두드러 질 수 있습니다.

1
zildjohn01

Word에서 유니 코드는 문자 집합 이고 유니 코드 Big Endian과 utf-8은 두 개의 encodings , 컴퓨터에서 문자를 01로 저장하는 데 사용됩니다.

0
thuzhf