카테고리

분류 전체보기 (510)
문학 (128)
찬양 콘티(Continuity) (80)
Business as heritage (6)
IT . Web (149)
Photo (127)
etc. (20)
Total348,472
Today61
Yesterday147
*20121219 국치가 회복될 사건이 올 때까지 블로그 양쪽은 조의를 표하는 검정색입니다.
Tistory 로고 이미지 티스토리 가입하기!









블로그 이미지

일반적으로 데이콤 등 지불대행사의 결제시스템에 결제요청 팝업창을 띄울 때
폼의 값을 전송하는 방식을 주로 이용하게 되는데,
만약 다국어 수용성을 고려해서 UTF-8로 사이트를 구성했을 경우 ascii 범위를 벗어나는 문자의 경우 EUC-KR 사이트로 전송 시 문자인식이 안되는 문제가 발생하게 된다.

요롤때 제일 쉬운 방법은 페이지 지시자에 ResponseEncoding을 명시해서 폼전송을 할 페이지는 전송대상과 인코딩을 맞추는 방법이 있다.

예)    <%@ Page Language="C#" ResponseEncoding="EUC-KR" %>



사실 처음에는

비추)
- System.Text

Encoding euckr = Encoding.GetEncoding(51949);
Encoding unicode = Encoding.Unicode;

byte[] unicodeBytes = unicode.GetBytes("나는야 유니코드 문자열");
byte[] euckrBytes = Encoding.Convert(unicode, euckr, unicodeBytes);

char[] euckrChars = new char[euckr.GetCharCount(euckrBytes, 0, euckrBytes.Length)];
euckr.GetChars(euckrBytes, 0, euckrBytes.Length, euckrChars, 0);
string euckrString = new string(euckrChars);


위의 방식으로 해보려 했으나 윈폼즈 환경에선 이대로 적용가능하지만 ASP.NET은 페이지인코딩에 맞추어 페이지와 다른 인코딩의 문자열이 있을 경우 자동변환하는 과정이 있는 것인지
출력시에는 알아서 UTF-8로 출력되었다.

http://msdn2.microsoft.com/ko-kr/library/system.text.encoding(en-us,VS.80).aspx
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by One of Remnants

댓글을 달아 주세요

달력

« » 2017.08
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    

최근에 받은 트랙백

글 보관함

티스토리 툴바