Q&A

  • String[5]의 값이 한글의 상위 바이트인지 하위 바이트인지...
한글 문자열과 특수문자(선문자, 한문 등)가 들어 있는 String형 문자열에서



특정 번째의(예를 들어 5번째) 값이 2바이트 문자의 상위 바이트인지 하위 바이트인지 알아내는 방법이 없을까요?





1  COMMENTS
  • Profile
    안치봉 1999.07.16 19:09
    안녕하세요.



    제가 알기로는 불가능한걸로 알고 있습니다.



    대신에 문자열의 처음부터 조사를 해들어가야 합니다.



    예를 들어 문자열이...



    '12안녕' 이라면



    3번째 문자가 한글의 두번째 바이트인지 알려면...



    문자열의 첫번째 1 부터 조사를 해서...



    알파벳이면 +1, 128 보다크면 +2 이런식으로 해서..



    계속조사하다 3번째 문자의 위치가 딱 맞아떨어지고 128보다 크면 한글의 첫번째 바이트고 아니면 한글의 두번째 바이트이거나 알파벳이죠.



    따로 일정한 위치가 한글인지 아닌지 조사하는 루틴을 만드셔야 합니다.



    위에걸 쓰시기 불편하면 WideString 을 쓰십시오. WideString 은 한글이든 영문이든 무조건 2바이트로 처리를 합니다. 그러므로...



    '123안치' 라는 widestring 이 있으면 인덱스를 하나씩 증가시켜도 알아서 시스템에서 한글 영문을 가려줍니다. 더 예를 들어 위문자열에서..



    delete(s, 1, 1) 하면 결과는 '23안치'

    delete(s, 4, 1) 하면 결과는 '123치' 가 됩니다...



    근데 대신 메모리는 거의 두번로 먹겠죠...



    widestring 에 대한 자세한 내용은 도움말을 참고하세요.



    이태호 께서 말씀하시기를...

    > 한글 문자열과 특수문자(선문자, 한문 등)가 들어 있는 String형 문자열에서

    >

    > 특정 번째의(예를 들어 5번째) 값이 2바이트 문자의 상위 바이트인지 하위 바이트인지 알아내는 방법이 없을까요?

    >

    >