这样的文件该如何读取呀!(100分)

  • 主题发起人 主题发起人 brt
  • 开始时间 开始时间
B

brt

Unregistered / Unconfirmed
GUEST, unregistred user!
有一*.dat文件,用winhex打开,如下:

12 12 12 12 34 23 22 22 ff ff ff ff 56 24 56
34 23 12 12 13 45 67 34 34 13 35 15 ff ff ff
ff 66 66 66 66 66 66 66 66 66 66 66 66 66 66
77 77 77 77 77 77 ff ff ff ff......

我知道用FF FF FF FF隔开的都是一条记录,但是记录长度
没有规律,请问:FF FF FF FF代表嘛意思呀!另,这样的
文件该如何读取呀!
谢了:)
 
我也想知道耶!
 
分数太少!
 
这样的文件可用流读取。Tstream类.
 
FF FF FF FF什么意思,别问我!去问生成这个文件的开发者!
如果是我,我可能用3个FF或5个FF,
只要不会和有用的数据产生冲突就可以做为数据记录的起始标志或是结束标志。
读取就象楼上说的,用Tstream实现!
 
解码与思路只有开发者清楚,你很难破解的,不过,如果这个DAT是可以生成的话,
你可以多生成几个这样的文件,保持各个文件的资料不同,然后你再分析一下,
也许有所帮助。

这样的文件利用“流”和“无类型”文件都可以操作。
 
用字节读取函数(C中),Delphi中就用流了
 
用流读,好多F是分隔标识,只要它不会干扰正常数据就行啦。好像我们写程序时用的变量名,你可别用保留字就好啦。
 
FF FF FF FF 的意思很简单,就是来分割数据块。以便区别是否当前数据读取完毕。。
你可以使用二进制文件操作。fread(&Var,4,1,fp);从当前位置依次读取数据,当读到
FF FF FF FF 抛丢这部分。
 
以前用过这样是用于通讯的,ffffffff用于接受命令判断
其他的几位组合成一个数字
必须有通讯规约之类的东西才行
 
记得在以前的应用中,曾经使用FF作为子目录的保护方法。
如mydirÿ,最后面的字符就是ASCII值FF,在文本显示时表现出来是一空格。
至于用DELPHI来操作这样的记录文件,上面已经写了很多,就不多讲了。
 
多人接受答案了。
 
后退
顶部