找回密码
 加入
搜索
查看: 1521|回复: 3

[AU3基础] [已解决]以二进制方式读文件得出错误字符.

[复制链接]
发表于 2012-2-23 07:34:17 | 显示全部楼层 |阅读模式
本帖最后由 easefull 于 2012-2-23 09:33 编辑

我试图使用au3强制使用二进制读取mode.dat(见附件)文件时,意外发现得到的数据不正确.
au3代码如下:
Local $sFileName = @ScriptDir & "\Mode.dat"
Local $hFileName = FileOpen($sFileName, 16)
Local $sData     = FileRead($sFileName)
FileClose($hFileName)
MsgBox(0, 0 , BinaryMid($sData, 1, 4))
Exit

用WinHex打开mode.dat,前面四个字节是"42 4D F6 12"


请问,这里是什么原因,有什么办法能够正确的读取全部文件的2进制或16进制数据吗?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2012-2-23 09:12:45 | 显示全部楼层
仔细看看你的代码吧,Local $sData     = FileRead($sFileName)应该改为Local $sData     = FileRead($hFileName)要不你就不是以二进制方式读取的

评分

参与人数 1金钱 +30 收起 理由
easefull + 30 万分感谢!

查看全部评分

 楼主| 发表于 2012-2-23 09:31:51 | 显示全部楼层
回复 2# benkel

晕,相似变量,我研究了三天愣是没搞明白.这真是一言震悟,万分感谢啊
发表于 2012-2-24 15:15:58 | 显示全部楼层
一个字母的问题啊,差距这么大
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-19 14:49 , Processed in 0.110071 second(s), 28 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表