2012-08-06 3 views
4

내 회사에서 유니 코드와 인코딩에 대한 기술 토론을하고 있는데, 여기에서 strings are always encoded이라는 요점을 만들려고 노력하고 있으며 개발자는 부주의하게 모든 정보가 0으로 가정되어서는 안됩니다. 127 ASCII.유니 코드 : 코드 포인트 127 위의 영어 문자

내가 잘못 인코딩 된 텍스트로 인한 문제의 많은 증거를 가지고,하지만 난 기본 영어 알파벳 유니 코드에 매핑되는 유니 코드 code point 127

위의 인코딩 된 번호와 간단한 영어 텍스트의 예를 찾을 수 없습니다 일반 숫자 ASCII와 동일한 숫자 값으로 지정합니다. A-Z[65-90] (또는 16 진수는 [0x41-0x5a])으로 매핑되고 [a-z][97-122] (16 진수 [0x61-0x7a])으로 매핑됩니다.

영어 알파벳이 코드 차트의 다른 곳에 나타 납니까? 나는 단순한 영어 알파벳 circumflex letters or other Latin variants을 의미하지 않습니다.

+2

* "문자열은 항상 인코딩되어야하며 일반 텍스트로 처리되지 않습니다"?! * 죄송합니다. 문자열이 일반 텍스트 인 경우에도 문자열은 항상 인코딩 됨 * (http://kunststube.net/encoding/). 당신이 의미 한 것을 분명히 할 수 있을까요? – deceze

+0

물론. 나는 개발자들이 항상 문자열이 인코딩된다는 것을 명심해야하고 문자열을 "일반 텍스트"로 취급해서는 안된다는 것을 의미했습니다. –

+0

그에 따라 내 질문이 수정되었습니다. 감사. –

답변

5

CJK 문자는 일반적으로 모든 글꼴로 고정 폭 글꼴을 사용합니다. 그 이유는 이러한 언어가 작성되는 경향이 있기 때문입니다.

그러나 CJK와 영어 문자를 섞으면 문제가 발생합니다. ASCII 문자는 일반적으로 CJK 문자의 너비가 아닙니다. 즉, ASCII를 사용하면 고정 폭 속성을 잃게됩니다. 이는 항상 바람직한 것은 아닙니다.

"일반"문자 대신에 전폭 문자 (U + FF00-FFEE, Wikipedia, Unicode code chart)를 사용할 수 있습니다. 이것들은 하나의 CJK 문자와 같은 너비를 갖는다는 속성을 가지고있다.

그러나 전폭 문자는 사실 CJK 컨텍스트 외부에서는 사용되지 않으며, 심지어 이러한 컨텍스트에서도 일반 텍스트가 자주 사용되지 않으며 단음이 중요하지 않은 것으로 간주됩니다.

+1

CJK는 중국인 일본인을 뜻하며, 그것을 찾아야 만했습니다 : P – Esailija

+0

다시 한번 감사드립니다! 나는 오늘 테크놀로지 이야기를했고이 예는 모든 사람들을 놀라게했다. –

2

글쎄, 당신은 다음 아니, 127 위의 어떤 영어 문자가없는 a-zA-Z 의미하지만 단어 fiancé, resumé 등처럼 가끔 영어로 그렇게 철자가 거기 그런 다음 127

위의 코드 포인트를 사용하는 경우 127 이상의 다양한 구두점 기호, 통화 기호 등이 있습니다.이 단어가 간단한 영어 텍스트로 간주되는지 확실하지 않습니다. 문장 부호 및 기호

+0

나의 사례는'하겐 다즈 '였다. 예제를 가져 주셔서 감사합니다! –

+2

Naïve, coördination, smörgåsbord, Ångström. 이 모든 것은 물론 대출 단어입니다. 흥미롭게도 Skånska 및 Strömberg와 같은 회사는 종종 국제 전화 (Skånska의 경우 회사 명을 변경하는 시점까지)에서 이름에서 분음 부호를 삭제합니다. – tripleee

3

많지 U + 007F 위의 코드 포인트 값이 :

  • "안녕하세요."그는 주어진했다
  • 종합 금 상자를 포함한 예순넷 - 크레용 크레욜라 그리고은 크레용 - 그리고 나를 보게하지 않을 것입니다.
  • X ≠ y는

위의 예는 사용

  • U + 201C 및 U + 201D - 스마트 따옴표
  • U + 2014 - EM 대시를
  • U + 2260 - 같지 않음

mor에 대해 Unicode charts을 참조하십시오. 이자형.

+0

@Esailija - 정정 해 주셔서 감사합니다. – McDowell