jinfen
驱动牛犊
驱动牛犊
  • 注册日期2002-12-21
  • 最后登录2009-02-25
  • 粉丝0
  • 关注0
  • 积分5分
  • 威望12点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
阅读:1767回复:7

怎样确定U盘里一个文件数据的起始地址?SL811

楼主#
更多 发布于:2003-07-18 10:00
谁能解释一下U盘里文件的起始地址要怎样找到?
要在文件数据后面追加数据是否要把整个文件读出后,再把整个文件写入,还是可以把要追加的数据直接写入到文件后面?
hustdj
驱动牛犊
驱动牛犊
  • 注册日期2003-06-06
  • 最后登录2008-07-02
  • 粉丝0
  • 关注0
  • 积分40分
  • 威望5点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-07-18 10:14
查看一下有关fat16的资料。

我前面一个有关创建目录的帖子,
里面贴了关于这fat16的中文资料。
jinfen
驱动牛犊
驱动牛犊
  • 注册日期2002-12-21
  • 最后登录2009-02-25
  • 粉丝0
  • 关注0
  • 积分5分
  • 威望12点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-07-18 10:25
查看一下有关fat16的资料。

我前面一个有关创建目录的帖子,
里面贴了关于这fat16的中文资料。
 

我看过了,但还是晕晕的,fat16资料也有。
我现在是不知道怎样确定文件的地址,比如说读取U盘文件 E:\\temp\\temp.txt ,要先找到根目录区的temp子目录项,我怎样才能知道根目录区的起始地址?是在起始扇区由标示吗?
hewx
驱动牛犊
驱动牛犊
  • 注册日期2001-09-22
  • 最后登录2004-12-15
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-07-18 11:11
关注,期待

补充问题:FAT32/FAT16协议中描述的地址(柱面、磁头、扇区、簇)跟U盘中的FLASH地址是如何对应的?我想通过FLASH的IO口直接在FLASH里建立文件。
山穷水尽疑无路,柳暗花明又一村。
jinfen
驱动牛犊
驱动牛犊
  • 注册日期2002-12-21
  • 最后登录2009-02-25
  • 粉丝0
  • 关注0
  • 积分5分
  • 威望12点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-07-18 11:22
关注,期待

补充问题:FAT32/FAT16协议中描述的地址(柱面、磁头、扇区、簇)跟U盘中的FLASH地址是如何对应的?我想通过FLASH的IO口直接在FLASH里建立文件。

你是想用FLASH物理地址来写文件?这有人做过吗?你是做U盘还是做HOST?
NewTech
驱动大牛
驱动大牛
  • 注册日期2002-10-02
  • 最后登录2010-03-27
  • 粉丝0
  • 关注0
  • 积分16分
  • 威望263点
  • 贡献值0点
  • 好评度86点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-07-18 14:53
所有的地址包括PBR,FAT,ROOT都是可以计算出来的!
文件的添加可以采用多种方式,windows是采用全部重写的方法!
hewx
驱动牛犊
驱动牛犊
  • 注册日期2001-09-22
  • 最后登录2004-12-15
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2003-07-18 16:07
[quote]关注,期待

补充问题:FAT32/FAT16协议中描述的地址(柱面、磁头、扇区、簇)跟U盘中的FLASH地址是如何对应的?我想通过FLASH的IO口直接在FLASH里建立文件。

你是想用FLASH物理地址来写文件?这有人做过吗?你是做U盘还是做HOST? [/quote]

类似U盘,是一个带数据采集功能的东西。

[编辑 -  7/18/03 by  hewx]
山穷水尽疑无路,柳暗花明又一村。
szzwm
驱动牛犊
驱动牛犊
  • 注册日期2003-06-12
  • 最后登录2005-05-06
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2003-07-18 17:31
查找文件的顺序:MBR、DBR、FAT、FDT,在FDT找到文件的子目录地址,进入子目录扇区之后再找到该文件即可。
要在文件后面追加数据,要从该文件的最后扇区开始。通常一个文件不会刚好用完这个扇区,因此要在这个扇区内找到原文件的末尾,再开始追加数据。另外,别忘了在FAT(包括备份的FAT)寻找可用的扇区,修改原结束标志,加入新的扇区起用标志和新的结束标志;同时要修改FDT中的文件长度字段。
游客

返回顶部