首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

VB 读十六进制资料写成文本文件为什么总是写成十六进制文件

2012-09-23 
VB 读十六进制文件写成文本文件为什么总是写成十六进制文件Private Sub Command1_Click()Dim ll As LongDi

VB 读十六进制文件写成文本文件为什么总是写成十六进制文件
Private Sub Command1_Click()
  Dim ll As Long
  Dim sj() As Integer
  strFilePath = App.Path
  strFileName = Text1.Text
  strFileUrl = strFilePath & "\" & strFileName
  Open strFileUrl For Binary Access Read As #1 'Len = 4 'Len(MyRecord)
  ll = LOF(1)
  Close #1
  ReDim sj(ll)
  Open strFileUrl For Binary As #1 'Len(MyRecord)
  Get #1, , sj
  Close
  strFileUrl = strFilePath & "\" & Text2.Text
  Open strFileUrl For Output As #2
  Dim i As Long
  Dim aa As String

  For i = 0 To UBound(sj)
  aa = Val(sj(i))
  If i Mod 10 = 0 Then
  Print #2, Chr(aa)
  Else
  Print #2, Chr(aa);
  End If
  Next
  Close
   
   
End Sub


文件类似:
0000000000h:32 00 33 00 34 00 33 00 33 00 34 00 35 00 32 00
0000000010h:32 00 33 00 34 00 33 00 33 00 34 00 35 00 32 00
这样,我想读这样的二进制文件,写成文本方件,用上面这段程序代码,为什么写出来的代码还是二进制的

请高手指导,谢谢

[解决办法]
Option Explicit

Private Sub Command1_Click()
Dim Ll As Long
Dim sj() As Byte ' 后面Print要求,此处须用Byte
Dim strFilePath$, strFileName$, strFileUrl$
'
strFilePath = App.Path
strFileName = Text1.Text
strFileUrl = strFilePath & "\" & strFileName
Open strFileUrl For Binary Access Read As #1 'Len = 4 'Len(MyRecord)
Ll = LOF(1)
ReDim sj(Ll - 1)
Get #1, , sj
Close #1
'
strFileUrl = strFilePath & "\" & Text2.Text
Open strFileUrl For Output As #2
Print #2, sj '原始文件为 Unicode格式
Close #2
End Sub


热点排行