2012-02-14 1 views
2

스마트 인용 부호는 한 인코딩에 저장 한 다음 다른 인코딩을 사용하여 렌더링/표시하면 문제가 발생합니다. 잘못 렌더링 할 때 스마트 쿼트가 표시되는 방법에는 어떤 것이 있습니까?스마트 인용 부호가 잘못 인코딩되는 일반적인 방법은 무엇입니까?

잘못된 문자 인코딩을 보았을 때 "오, 영리한 따옴표 여야합니다."라는 문제를 해결하려고합니다.

+0

왜 시도하고 알아 내야하지 않습니까? 똑똑한 따옴표로 문자열을 만들고 올바른 인코딩으로 저장하십시오. 잘못된 인코딩을 가정하여 읽으십시오. 당신이 얻는 것을보십시오. 원하는대로 여러 가지 방법으로하십시오. –

답변

5

가장 일반적인 인코딩 혼합은 ANSI/Latin1에 비해 UTF-8 일 가능성이 큽니다.

"" '의 ANSI/Latin1 인코딩은 [93] [91] [92] [94] 16 진수입니다. UTF-8로 해석되면이 바이트는 유효하지 않은 문자로 처리되고 상자가있는 물음표로 나타날 수 있습니다.

"" ' "의 UTF-8 인코딩은 [E2 80 9 C] [E2 80 98] [E2 80 99] [E2 80 9D] 16 진수입니다. ANSI/Latin1로 해석되면,이 바이트들은 "â € ~ â €로 나타날 것입니다.

+0

WTF가이 ANSI 것입니까? – tchrist

+0

http://msdn.microsoft.com/en-us/library/cc195054.aspx –

+3

당신은 매우 오해를합니다. Latin-1은 ISO 8859-1의 유효한 별칭입니다. 그리고 CP1252는 ISO 8859-1이 아닙니다. Microsoft의 거짓말을 믿지 마십시오. – tchrist

관련 문제