EUCコードで作成されたlndatファイルをオープンし、
コード変換するプログラムを作っています。

データの所得時にHexを使っているのですが、
所得データが
000000000000000000220801011200012000
となっています。

元データは
000000000000000000000000000000000000220080010001012000000120000000000000
なため、この様に所得したいのですが、上手く所得できません。
こういったデータの所得は可能なのでしょうか?
また、自分の作成したソース自体にバグがあるのでしょうか?
よろしかったら教えてください。

>>以下ソース
Dim Data As Byte     '所得データ(1バイトごと)
Dim Data_A As Variant 'ファイルから所得したデータ(ALL)
Dim I As Long 'カウンター
Dim File_Name As String 'ファイル名
Dim Filnm As Long 'ファイル番号

I = 1
Data_A = ""
Filnm = FreeFile
File_Name = "AA.lndat"
Open App.Path & File_Name For Binary As #Filnm

Do While EOF(Filnm) = False
Get #Filnm, I, Data
Data_A = Data_A & Hex(Data)
I = I + 1
Loop

Close #Filnm

>>開発環境
VB5.0(SP3)
Win2000
フリーのDLL等は使用不可能とお考え下さい。

このQ&Aに関連する最新のQ&A

A 回答 (3件)

 >Data_A = Data_A & Hex(Data)



の所を
Data_A = Data_A & Right$("00" + Hex(Data), 2)

と書き換えて下さい。
    • good
    • 0
この回答へのお礼

お答え有難うございます。
こちらの方が、強制的に0埋めするより安定するのかも。
(Format関数は結構不安定(!?)と聞いたことがあったので…)
ご教授有難うございます(^o^)。

お礼日時:2003/07/11 17:41

>Data_A = Data_A & Hex(Data)


Hex(Data)が0-Fのとき
前に0を追加したら
    • good
    • 0
この回答へのお礼

お答え有難うございます。
教えて頂いたように、
所得データに0埋めを行うことにしました。

お礼日時:2003/07/11 17:36

エンコード・デコード


で検索

参考URL:http://oshiete1.goo.ne.jp/kotaeru.php3?q=393593
    • good
    • 0
この回答へのお礼

ご返答有難うございます。
実はそちらの過去ログも見たのですが、
私が扱うデータとちょっと感じが違ったので熟読していませんでした(爆)

お礼日時:2003/07/11 17:34

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング