主题:如何能够按字节读取从头到尾
孙瑞
[专家分:590] 发布于 2007-08-29 15:22:00
有的文件使用了文件结束符,如何才能将这种文件用二进制方法读取完全??
回复列表 (共9个回复)
沙发
天天学习 [专家分:4570] 发布于 2007-08-29 19:29:00
想学习学习,请楼主把你的那个(提前有)文件结束符的文件样本上传共享一下,可否?
板凳
孙瑞 [专家分:590] 发布于 2007-09-07 21:14:00
所谓文件结束符就是CHR(26)所代表的字符!
3 楼
merry05 [专家分:8920] 发布于 2007-09-07 22:00:00
有这回事儿?CHR(26)不是控制字符SUB吗???
4 楼
bcahzvip [专家分:6040] 发布于 2007-09-08 02:38:00
[文件结束符]
是什么东西呀?!~
5 楼
天天学习 [专家分:4570] 发布于 2007-09-08 13:20:00
试试下面的,也许对你有用。
Option Explicit
Private Sub Command1_Click() '产生一个提前有文件结束符chr(26) 的测试文件
Dim s As String
s = "the data before the chr(26)!" & Chr(26) & "the data after the chr(26)!"
Open "e:\test.txt" For Output As #1
Write #1, s
Close #1
End Sub
Private Sub Command2_Click()
Dim s As String
Open "e:\test.txt" For Input As #2 'input模式不能读取完整,遇到chr(26)就结束了
Input #2, s
Close #2
Text1.Text = s 's="the data before the chr(26)!"
End Sub
Private Sub Command3_Click()
Dim temp() As Byte
ReDim temp(FileLen("e:\test.txt") - 1) As Byte
Open "e:\test.txt" For Binary As #3
Get #3, , temp
Close #3
Text1.Text = StrConv(temp, vbUnicode) '可以正确读取chr(26)
'Open "e:\test2.txt" For Binary As #4 '另存为test2.txt
' Put #4, , temp
'Close #4
End Sub
6 楼
我是大喊三 [专家分:3010] 发布于 2007-09-08 15:24:00
二进制文件读取方式,应该是按文件的字节数来控制的吧
7 楼
孙瑞 [专家分:590] 发布于 2007-09-22 12:19:00
能详细解释一下代码吗?
8 楼
loveyouvb [专家分:1600] 发布于 2007-09-26 09:36:00
胡说 谁跟你说CHR(26)就是结束的???
9 楼
孙瑞 [专家分:590] 发布于 2010-05-02 13:18:00
谢谢大家,现在结贴!
我来回复