2011-11-01 1 views
0

HTTPUtility.URLDecode를 사용하여 URL의 문자를 디코딩하고 있습니다. 여기서 문자 I 디코딩 할 수 있습니다URL의 외국어 문자 디코딩

퍼센트 26 = "&"
% 28 = "("
% 29 = ")"
% 20 = ""
%의 5B = "["
%의 5D = "]"
%의 2C = ""
% 23 = "#"
%의 F3 = "O"(스페인어 문자)

HTTPUtility.URLDecode 모든 그러나 최종 움직인다 하나. 그 마지막 문자를 지금 찾고/바꾸고 있지만 더 나은 자동 방법이 있기를 바란다. 그래서 나는 미래에 찾기/바꾸기를 갱신 할 필요가 없다.

+3

URL 문자는 UTF-8로 인코딩되어 있다고 생각합니다. URL을 구성하는 사람이 ISO-8859-1 인코딩을 대신 사용하고있는 것 같습니다. –

답변

3

당신은 an overload of HttpUtility.UrlDecode() that accepts an encoding를 사용해야합니다

HttpUtility.UrlDecode("%F3", Encoding.GetEncoding("ISO-8859-1")) 

이 실제로 가정 ISO-8859-1 인코딩을 사용하고 있습니다. Windows-1250을 사용하는 경우이를 사용해야합니다. (이 두 가지는 매우 비슷하지만 동일하지는 않습니다.)

+0

그랬습니다. 너와 조에게 많은 감사를드립니다! –