Q&A

  • UTF8문자열을 깨지지않게 다루려면?
안녕하세요.
웹서버에서 다국어로 된 utf8문자열을 받아 필요한 정보들을 잘라내서 트리뷰에 뿌려야 합니다.
컴체계는 중문인데 영어, 일어, 중어, 한국어, 로어 등 여러 나라말이 하나의 문자열에 섞여오니 이걸 다룰 방법이 막연합니다.
일단 tntmemo에 받아온 문자열을 뿌리면 깨지지않고 제대로 나오는데 여기서 일정부분 예로 <name>김정은</name>을 잘라 다른 tnteditbox에 넣으면 '김정은' 이 '???'로 됩니다.
copy, midstr, midbstr을 써봤는데 깨지는건 마찬가지입니다.
지금은 중문과 한글, 영문만 시험중이고 중문체계에서 작업하니 한글만 깨지는데 아마 일문이나 로문도 깨질겁니다.

utf8디비에 쓰고 읽어 tnt에 뿌리는건 해봤는데 문자열을 깨지지 않게 다루자니 난감하군요.
선배님들 좋은 경험 들려주시기를 바랍니다.
1  COMMENTS
  • Profile
    steps 2008.08.13 07:13
    자답입니다.
    한글이 깨지는 원인은 문자열을 자르는 함수에 있은게 아니라 stringreplace함수에 있었습니다.
    mysql이 Xml을 만들때 "친절하게" 넣어준 tab문자(#9)를 없애느라고 stringreplace함수를 썼는데 이게 ansistring용인지라 utf8문자열의 한글을 용감하게 잘라버렸습니다.
    유니코드문자열을 다루려면 인수형에 더 주의를 돌려야겠군요.