VB中如何以16进制读取文件
答案:2 悬赏:20 手机版
解决时间 2021-04-17 10:49
- 提问者网友:書生途
- 2021-04-17 07:20
VB中如何以16进制读取文件
最佳答案
- 五星知识达人网友:掌灯师
- 2021-04-17 08:34
VB6.0可以二进制方式全部读取文件,然后将每字节用Hex函数循环转换为16进制字符串形式,拼接成字符串显示与富文本框。
Hex 函数,返回代表十六进制数值的 String。
Get 语句,将一个已打开的磁盘文件读入一个变量之中。
实现代码:
Private Sub Command1_Click()
Dim strWj As String
Dim aryContent() As Byte
Dim i As Long
Dim j As Long
CommonDialog1.CancelError = True ' 设置“CancelError”为 True
On Error GoTo ErrHandler
CommonDialog1.Flags = cdlOFNHideReadOnly ' 设置标志
' 设置过滤器
CommonDialog1.Filter = "All Files (*.*)|*.*|Text Files" & "(*.txt)|*.txt|Batch Files (*.bat)|*.bat"
CommonDialog1.FilterIndex = 2 ' 指定缺省的过滤器
CommonDialog1.ShowOpen ' 显示“打开”对话框
' 显示选定文件的名字
'MsgBox CommonDialog1.FileName
Open CommonDialog1.FileName For Binary As #1
ReDim aryContent(LOF(1) - 1)
Get #1, , aryContent
Close #1
For i = 0 To UBound(aryContent)
strWj = strWj & Right("00" & Hex(aryContent(i)), 2) & " "
DoEvents
Next
RichTextBox1 = strWj
ErrHandler:
' 用户按了“取消”按钮
Exit Sub
End Sub效果:
Hex 函数,返回代表十六进制数值的 String。
Get 语句,将一个已打开的磁盘文件读入一个变量之中。
实现代码:
Private Sub Command1_Click()
Dim strWj As String
Dim aryContent() As Byte
Dim i As Long
Dim j As Long
CommonDialog1.CancelError = True ' 设置“CancelError”为 True
On Error GoTo ErrHandler
CommonDialog1.Flags = cdlOFNHideReadOnly ' 设置标志
' 设置过滤器
CommonDialog1.Filter = "All Files (*.*)|*.*|Text Files" & "(*.txt)|*.txt|Batch Files (*.bat)|*.bat"
CommonDialog1.FilterIndex = 2 ' 指定缺省的过滤器
CommonDialog1.ShowOpen ' 显示“打开”对话框
' 显示选定文件的名字
'MsgBox CommonDialog1.FileName
Open CommonDialog1.FileName For Binary As #1
ReDim aryContent(LOF(1) - 1)
Get #1, , aryContent
Close #1
For i = 0 To UBound(aryContent)
strWj = strWj & Right("00" & Hex(aryContent(i)), 2) & " "
DoEvents
Next
RichTextBox1 = strWj
ErrHandler:
' 用户按了“取消”按钮
Exit Sub
End Sub效果:
全部回答
- 1楼网友:蕴藏春秋
- 2021-04-17 10:08
Open "文件" For Binary As #1 用二进制打开文件Get #1, , arr() '取得文件的内容到数组arr() 这个数组是自己定义的byte类型数组。然后你可以根据需要进行操作arr()中的单个元素是字节数据。直接可以显示成16进制的数据的。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯