掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
oracleの「〜」を文字化けせずに取得するには? (ID:30396)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
DEKO様 もにゃ様 いつもお世話になっております。 ちゃかです。 まずは無事正常動作しました事をご報告致します。 >>DEKO様 参考ページやソースまでコーディングしていただきありがとうございました。 UNICODEの解説も詳しくしていただき感謝しています。 >>もにゃ様 アドバイスありがとうございます。 知らないことでもそこから切り口が見つかる事も多くあると思いますので またアドバイスをお願い致します。 今後の同一の問題の為にソース等を残しておきます。 皆様本当にありがとうございました。 またよろしくお願い致します。 管理人様貴重なスペースありがとうございました。 //-------------------------------------------------------- //以下問題解決ソース //-------------------------------------------------------- (* 環境 ・Windows Vista Bussiness ・Delphi 7 Professinal ・Oracle 10g *) { 関数宣言 } //「〜」文字変換関数 (「#$301C」 → 「#$FF5E」) function F_WaveDashReplace(WS : WideString): String; { 関数処理 } //================================================= // 「〜」文字置換処理 //================================================= function TForm1.F_WaveDashReplace(WS : WideString): String; var i : Integer; begin for i := 1 to Length(WS) do begin if WS[i] = #$301C then begin WS[i] := #$FF5E; end; end; result := WS; end; //----------------------------------------- // メイン処理 //----------------------------------------- ADOQuery1.SQL.Clear; ADOQuery1.SQL.Add('select * from test'); ADOQuery1.Open; while ADOQuery1.Eof = False do begin //showmessage(ADOQuery1.FieldByName('text').AsString); ← このままでは「〜」文字が「?」に文字化け showmessage(F_WaveDashReplace(ADOQuery1.fieldByName('text').AsVariant)) ADOQuery1.Next; end; ADOQuery1.Close; end; 結果:DB上 ⇒ ShowMessage ・「あいう」⇒「あいう」 ・「あ〜う」⇒「あ〜う」 ・「あ?う」 ⇒「あ?う」 ・「? / 〜」⇒「? / 〜」 ・「〜 / ?」⇒「〜 / ?」
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.