Q&A

  • 한글문자 "창" 을 아스키코드값을 구하는 소스를 아시는분 도와주세요
안녕하세요 !!

한글을 아스키코드로 변환해야 되는데 ...

"창" 이라는 글자의 아스키 코드값이

  1545 라는 값만 알고 있습니다

고수님들 도와 주세요!!
1  COMMENTS
  • Profile
    ㉯㉰감자 2002.05.10 02:28
    procedure TForm1.Button1Click(Sender: TObject);
    const
        S = '창';
    begin
        // 16진수
        Label1.Caption := IntToHex(Ord(S[1]),2)+IntToHex(Ord(S[2]),2);
        // 10진수
        Label2.Caption := IntToStr((Ord(S[1]) shl 8 ) or (Ord(S[2])));
        // 다시 문자로
        Label3.Caption := Char(Ord(S[1])) + Char(Ord(S[2]));
    end;

    요렇게 해보세요..

    한글도 asc코드 2바이트로 구성됩니당... (유니코드는 틀림)

    고로...한글 1글자는 asc코드 2바이트이므로..

    첫번째 바이트랑 두번째 바이트랑 asc코드를 구해서

    서로 더해주면 되죵...

    16진수로 표시한 부분을 보시면 첫번째 바이트의 아스키코드를 구해서

    16진수 문자로 변환 했구 두번째 바이트의 아스키코드를 구해서

    다시 16진수 문자로 변환한 다음 서로 더한겁니다..

    2번째 10진수는 첫번째 바이트의 아스키값을 구해서 그 값을 왼쪽으로

    8bit밀고 두번째 바이트를 더한거죠...

    폼에다 버튼 하나 올리고 클릭 이벤트에다 위 소스 넣고..

    테스트 해보세요..

    Label을 3개 올려보시고 테스트 하세요...

    참..3번째 Label에는 asc값으로 다시 한글을 표시하도록 해놓은 겁니다.

    이상 허접 감자였습니다