[リストへもどる]
一括表示

投稿時間:2003/11/28(Fri) 16:23
投稿者名:ごんた
Eメール:
URL :
タイトル:
EUC→SJIS
お世話になっております。
開発環境はWinXP、VB6.0です。
テキストボックスに出力されたEUCコードの文字を、SJISに変換する
方法はあるのでしょうか?過去レスにも載っていなかったので既出
では無いと思うのですが、もし分かる方がいらっしゃればご教授願えないで
しょうか?申し訳ないのですが、よろしくお願いします。

投稿時間:2003/11/28(Fri) 16:26
投稿者名:魔界の仮面弁士
Eメール:
URL :
タイトル:
Re: EUC→SJIS
EUC文字列のバイトデータ(Byte配列、またはEUCのテキストファイルなど)があるならば、
『Charsetプロパティを"euc-jp"に指定したADODB.Streamオブジェクト』で読み込めばOKです。


> テキストボックスに出力されたEUCコードの文字を

データが破損しないように、(データを復元可能な形で)TextBoxに表示させていますか?
(例えば、文字コードそのまま"CADBBBCE"などといった16進数の並びにするとか…)

元のEUC文字列のバイナリデータを、単にそのままTextBoxに出力していた場合、
その時点で、既にデータが破損してしまっている可能性があります。
その場合は、それを正しいデータに復元するのは無理でしょう。

# VBのTextBoxは、Shift_JISの文字列しか扱えないため、TextBoxに出力した時点で、それはEUCではなく、
# Shift_JIS形式のデータとして処理されます。そのため、Shift_JISではありえないバイナリデータが
# TextBoxに渡された場合、データが化けて表示される可能性があります。

投稿時間:2003/11/28(Fri) 16:38
投稿者名:ごんた
Eメール:
URL :
タイトル:
Re^2: EUC→SJIS
> ADODB.Streamオブジェクトで、Charsetプロパティを"euc-jp"にして読み込めばOKです。
魔界の仮面弁士さん、早期の返事ありがとうございます。
さっそく試させてもらいます。ありがとうございました。

投稿時間:2003/12/01(Mon) 19:16
投稿者名:ごんた
Eメール:
URL :
タイトル:
Re^3: EUC→SJIS
>魔界の仮面弁士さん
With CreateObject("ADODB.Stream")
        .Open
        .Charset = "euc-jp"
        .loadfromfile "C:\aa\bachi.txt"
        .Close
    End With
上記のようなコマンドを打ち、ファイルのロードはできるのですが、
テキストボックスに吐き出すにはどうしたら良いか教えていただけない
でしょうか?ADODB.streamで検索などをしたのですが、方法がみつからない
のです(。。)探し方が悪いのかもしれませんが.....。

投稿時間:2003/12/01(Mon) 19:30
投稿者名:魔界の仮面弁士
Eメール:
URL :
タイトル:
Re^4: EUC→SJIS
> ADODB.streamで検索などをしたのですが、方法がみつからないのです(。。
ADOのヘルプを見てみましょう。


> With CreateObject("ADODB.Stream")
>         .Open
>         .Charset = "euc-jp"
>         .LoadFromFile "C:\aa\bachi.txt"

          Text1.Text = .ReadText()     '☆ 追加 ☆

>         .Close
>     End With

投稿時間:2003/12/02(Tue) 08:57
投稿者名:ごんた
Eメール:
URL :
タイトル:
Re^5: EUC→SJIS
>           Text1.Text = .ReadText()     '☆ 追加 ☆
>魔界の仮面弁士さん
おかげさまで解決できました。
ADOのヘルプを見れば良かったのですね.....機転が利かず
お手数おかけしました(__)
ありがとうございました!!