Q&A

  • 한글아스키변환 비스무리한건데요~
<!--CodeS-->
생 뚱 맞 죠
& #49373 & #46769 & #47582 & #51424 ->빈칸 붙여 쓰면 이 게시판에도 똑같은.. ㅡ,.ㅡ;;
<!--CodeE-->

싸이월드라는 방명록에 위의 숫자키를 써 넣고 완료를 누르면
밑에 쌩뚱~으로 해석되어 나타 납니다.

그냥 한글 십진코드인갑다 했는데...

아닌거 같은....

도데체 알수 없는..

묻고 답하기를 참조하여 코딩을 해본 결과

쌩-> [Http용]%BD%DF -> [16진수]BDDF ->[십진수] 48607  

[http용]
memo2.lines.Add(HTTPEncode(a));

[16용]
c := IntToHex(Ord(a[j]),2)+IntToHex(Ord(a[j+1]),2);

[10용]
위에 16진수를 가져다가 &만 붙여서
c:=inttostr(strtoint('$'+c));


일케 나오는데..

그래서 한글 말구 영문이나 기호를 해
1  COMMENTS
  • Profile
    최용일 2005.04.23 03:58
    안녕하세요. 최용일입니다.

    Ansi와 Unicode의 차이같은데요... 아래 코드로 확인해보세요...

    <!--CodeS-->

    procedure TForm1.Button3Click(Sender: TObject);
    var
        AnsiCode: string;
        WideCode: WideString;
        IntValue: Integer;
    begin
        AnsiCode := '쌩';
        IntValue := (Byte(AnsiCode[1]) shl 8) + Byte(AnsiCode[2]);
        Memo1.Lines.Add('Ansi: ' + AnsiCode + '  ' + IntToStr(IntValue));
        WideCode := '쌩';
        IntValue := Word(WideCode[1]);
        Memo1.Lines.Add('Wide: ' + WideCode + '  ' + IntToStr(IntValue));
        AnsiCode := '생';
        IntValue := (Byte(AnsiCode[1]) shl 8) + Byte(AnsiCode[2]);
        Memo1.Lines.Add('Ansi: ' + AnsiCode + '  ' + IntToStr(IntValue));
        WideCode := '생';
        IntValue := Word(WideCode[1]);
        Memo1.Lines.Add('Wide: ' + WideCode + '  ' + IntToStr(IntValue));
    end;

    Ansi: 쌩  48607
    Wide: 쌩  49961
    Ansi: 생  48125
    Wide: 생  49373

    <!--CodeE-->

    ^^ 항상즐코하세요...