プロが教える店舗&オフィスのセキュリティ対策術

バッファーにパックされたデータが入ってきます。
そのデータを1バイトずつHEXで表示したいのですが
VB.NETでプログラミングしているのですが苦戦しています。
H01,H10,H20...等はしたコーディングで表示できるのですが
HC5,HCA,E0等の上位4ビットが大きいと全て3Fとなって期待した表示ができません。
メモリーダンプして1バイト毎に16進数(0~F)で表示したいのと同様で、1バイトを変換しないでそのままHEX表示したいです。

下はうまく動かないサンプルです。開発言語はVB.NETです。
------------------------------------
InBuffer = _Rfid.ReadExisting()
hexData = ""
For i = 0 To Len(InBuffer) - 1
hexData = hexData & Hex(Asc(Mid(inData, i + 1, 1))).PadLeft(2, "0"c)
Next
-----------------------------
どなたか方法をご教示ください。
宜しくお願いします。

A 回答 (1件)

SerialPortクラス使った事ないから自信ないけれども。



http://msdn.microsoft.com/en-us/library/system.i …

戻り値はStringでいいのか?

http://msdn.microsoft.com/en-us/library/system.i …

Stringで正しいとしてEncodingは正しいのか?

System.Text.Encoding.GetEncodingメソッドの
EncoderFallbackやDecoderFallbackはちゃんとしているか?
===============

http://msdn.microsoft.com/en-us/library/system.i …

http://msdn.microsoft.com/en-us/library/ms143549 …
もし、StringでなければReadByte()やRead(Byte[],Int32)メソッドだよね?

http://msdn.microsoft.com/en-us/library/system.b …
http://msdn.microsoft.com/en-us/library/system.b …
ReadByte()を使うなら、BitConverterクラスのgetbytesメソッドから
ToStringメソッドでいけるかな。
    • good
    • 0

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