为了熟悉FAT文件系统,找了张1G的SD卡,用FAT格式化后,通过WinHex了解各部分的结构,这里主要说一下文件的删除及恢复。
1G的SD卡用FAT16格式化后,簇大小为16k,找了个66k的doc文件拷贝到sd卡中,然后将其删除,查看操作前后FAT表、根目录、DATA区的区别,发现:
1)DATA区的数据是没变的;
2)通过根目录记录的文件起始簇查看FAT表,删除后相应的FAT表清0;
3)根目录的8字节文件名的第一个字节被改为了0xE5。
通过上面的分析,既得到了恢复已删除文件的办法:
1)把根目录的文件名首字节的0xE5恢复;
2)把FAT表人为添加上,对于上面66k的doc文件,占用了5簇;
再打开sd卡看看,是不是被删除的文件又回来了?呵呵......
11.24: FAT32文件系统文档第23页关于目录文件名部分:
阅读(1080) | 评论(0) | 转发(0) |