vb 二进制文件中二进制转十进制谁会啊?

来源:百度知道 编辑:UC知道 时间:2024/05/13 11:26:21
vb设计,有一个dat二进制文件,读的时候应该是byte字节型,我想把里面的二进制数转成十进制数,输出到文本文件中。注意是byte字节型的二进制转十进制,网上流传的代码都是string型的。我实在不知道该怎么操作这个bytes型,不了解。有谁知道该怎么做么?请把具体代码写出来,先谢谢了!!!
首先谢谢大家,对不起,可能是我没说明白。现在我有一个二进制文件,用open二进制打开,get #1,mybyte后,可以化成十进制,但老师的要求是四个字节是一个A数据,不知道该怎么做啊,老师要求的是什么意思啊?该怎么做呢?谢谢大家!

2009-4-16 09:20
byte类型,读入后输出,本来就是十进制的了。任何数据在磁盘上都是以二进制存储的。

Private Sub Command1_Click()
Dim b() As Byte, fName As String, lfile As Long, i As Long
fName = "c:\BOOTSECT.DOS"
lfile = FileLen(fName)
ReDim b(1 To lfile)
Open fName For Binary As 1#
Get #1, , b
Close
For i = 1 To lfile
Debug.Print b(i);
Next i
End Sub
将c:\BOOTSECT.DOS换成你需要的文件名就可以了

2009-4-17 09:10
PS:
如果存储的数是以long类型的标准的4个字节存储(存储在前面的为数据的低位,如:存储数据为03 02 01 00,实际是 &H00010203)的话,只需要把读入数的类型定义为long类型,循环的结束条件设为 lfile/4就可以了。
如果存储的数不是以long类型的标准存储的话,那就要用到CopyMemory。
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, source As Any, ByVal Length As Long)
Private Sub Command1_Click()
Dim b() As Byte, fName As String, lfile As Long, i As Long, j As Integer
Dim b1(0 To 3) As Byte, lngTMP As Long
On Error Resume Next