阅读:1767回复:7
怎样确定U盘里一个文件数据的起始地址?SL811
谁能解释一下U盘里文件的起始地址要怎样找到?
要在文件数据后面追加数据是否要把整个文件读出后,再把整个文件写入,还是可以把要追加的数据直接写入到文件后面? |
|
沙发#
发布于:2003-07-18 10:14
查看一下有关fat16的资料。
我前面一个有关创建目录的帖子, 里面贴了关于这fat16的中文资料。 |
|
板凳#
发布于:2003-07-18 10:25
查看一下有关fat16的资料。 我看过了,但还是晕晕的,fat16资料也有。 我现在是不知道怎样确定文件的地址,比如说读取U盘文件 E:\\temp\\temp.txt ,要先找到根目录区的temp子目录项,我怎样才能知道根目录区的起始地址?是在起始扇区由标示吗? |
|
地板#
发布于:2003-07-18 11:11
关注,期待
补充问题:FAT32/FAT16协议中描述的地址(柱面、磁头、扇区、簇)跟U盘中的FLASH地址是如何对应的?我想通过FLASH的IO口直接在FLASH里建立文件。 |
|
|
地下室#
发布于:2003-07-18 11:22
关注,期待 你是想用FLASH物理地址来写文件?这有人做过吗?你是做U盘还是做HOST? |
|
5楼#
发布于:2003-07-18 14:53
所有的地址包括PBR,FAT,ROOT都是可以计算出来的!
文件的添加可以采用多种方式,windows是采用全部重写的方法! |
|
6楼#
发布于:2003-07-18 16:07
[quote]关注,期待 你是想用FLASH物理地址来写文件?这有人做过吗?你是做U盘还是做HOST? [/quote] 类似U盘,是一个带数据采集功能的东西。 [编辑 - 7/18/03 by hewx] |
|
|
7楼#
发布于:2003-07-18 17:31
查找文件的顺序:MBR、DBR、FAT、FDT,在FDT找到文件的子目录地址,进入子目录扇区之后再找到该文件即可。
要在文件后面追加数据,要从该文件的最后扇区开始。通常一个文件不会刚好用完这个扇区,因此要在这个扇区内找到原文件的末尾,再开始追加数据。另外,别忘了在FAT(包括备份的FAT)寻找可用的扇区,修改原结束标志,加入新的扇区起用标志和新的结束标志;同时要修改FDT中的文件长度字段。 |
|