掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
WideStringはどのようにバイトを処理しているのですか? (ID:17806)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
文字をバイト単位で読み出し、 外字の文字列には、処理を行なうことを考えています。 (外字 … F040〜F9FC 該当する文字列) 文字単位に抜き出せるWideStringを利用しようと考えていますが、 WideStringの場合、得られるバイト文字??が実際のバイトコードと かけ離れたものになります。 (下記参照) 外字かどうか判別できればよいので、 得に問題はないだろうと思っているのですが、 何故、このようにかけ離れたバイトコードになるのでしょうか? [参考] https://www.petitmonte.com/bbs/answers?question_id=1266 --- WideString と String の比較 --- var ws : WideString; s : String; begin s := #$F0 +#$40 + #$F9 + #$FC; //F040とF9FC ws := s; //WideString for i := 1 to Length(ws) do ShowMessage('ws['+IntToStr(i)+'] = '+ InttoHex(Ord(ws[i]),1)); //String for i := 1 to Length(s) do ShowMessage('s['+IntToStr(i)+'] = '+ InttoHex(Ord(s[i]),1)); end; ------------------------------------ 実行結果 //WideString ws[1]=E000 ws[2]=E757 //String s[1] = F0 s[2] = 40 s[3] = F9 s[4] = FC
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.