2010-04-27 2 views
0

주어진 문자열 내에서 ISO 8859-1 기호를 찾은 다음 적절한 의미로 변환하려고합니다. 그러나 나는 다음과 같은 실제 값을 원하는 곳에서 물음표를 얻습니다.ISO 8859-1 기호/외국어를 WinForms 응용 프로그램에 통합

외국/고유 기호를 올바르게 처리하는 방법에 대해 올바른 방향을 가르쳐 주시겠습니까?

+2

"적절한 의미"? 여기 정확히 무슨 소리를하는거야? .NET은 완전히 유니 코드를 인식합니다. 다른 것들과의 상호 운용성에 절대적으로 필요한 경우가 아니라면 고대 인코딩을 고집하지 않아야합니다. – Joey

+0

Eek .. 나는 여기에서 당혹 스럽다. 텍스트 파일을 값 배열로 가져 왔고 디버거에서 배열을 보면 외래 기호가 모두 ""으로 표시되었습니다. 그것은 완벽하게 잘 작동합니다. 모든 혼란에 대해 유감스럽게 생각합니다. – joslinm

답변

2

질문 문구에서 문자열의 바이트 값을 확인한 다음 변환하는 것처럼 들리지만 작동하지 않습니다. 문자열은 문자로 구성되며 각 문자는 인코딩에 따라 두 개 이상의 바이트로 구성 될 수 있습니다. 즉, 바이트 스트림에서 사람이 읽을 수있는 문자열로의 변환은 이미 문자열에 액세스 할 때까지 수행됩니다.

System.Text.Encoding 클래스를 살펴보십시오. 한 인코딩에서 다른 인코딩으로 바이트 스트림을 변환하려면 System.Text.Encoding.Convert()를 사용하십시오.

그러나 사람들이보다 정확한 답변을 줄 수 있도록 특정 작업에 대한 자세한 내용을 알고 있으면 좋을 것입니다.

관련 문제