找回密码
 加入
搜索
查看: 1657|回复: 4

[系统综合] 请问如何对一个二进制流文件进行取反操作?

  [复制链接]
发表于 2011-2-13 10:57:00 | 显示全部楼层 |阅读模式
比如对一个test.dat文件(50M大小),用二进制方式打开,然后对每一位进行取反操作(即0变1,1变0),再将全部取反后的数据写成另一个文件test1.dat

是否要用数据结构?
烦劳大侠给予指点!!
发表于 2011-2-13 11:07:57 | 显示全部楼层
本帖最后由 mozha 于 2011-2-13 11:09 编辑

用二进制读出来,再用正则替换,不过文件太大了,可以考虑分成几段
 楼主| 发表于 2011-2-13 11:10:04 | 显示全部楼层
感谢,能否举个简单例子,再次感谢!
发表于 2011-2-13 15:02:16 | 显示全部楼层
还没开始学正则,给个笨办法,先读取为一个字符窜,把0全部替换为2,再把1替换为0,最后把2替换为1,写入新文件中
发表于 2011-2-13 17:20:21 | 显示全部楼层
是这个意思?
#include <array.au3>

$file=FileOpen(@ScriptDir&"\aa.txt",16)
$read=FileRead($file)
FileClose($file)
$len=BinaryLen($read)
for $i=1 to $len
        $temp=BitNOT(BinaryMid($read,$i,1))
        msgbox(0,BinaryMid($read,$i,1),$temp)
Next
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-9-21 13:54 , Processed in 0.080484 second(s), 22 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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