1. 主页
  2. 文档
  3. exFAT文件系统结构
  4. exFAT目录结构
  5. 扩展文件名目录项

扩展文件名目录项

表20 扩展文件名目录项结构

字段名 偏移(字节) 大小(字节) 描述/值
项类型 0 1 0xC1

类型区域 偏移 大小
是否使用 7 1 1
类别 6 1 1
是否重要 5 1 0
代码 0 5 1
常规辅助标志 1 1
区域 偏移 大小
可能分配 0 1 0-没有

1-分配

没有FAT链 1 1 0-有效

1-无效

保留 2 14
文件名 2 30 15个字符的Unicode文件名,文件名最多255个字符。特殊的文件名“.”(本目录)“..”(上级目录)将不再记录
注意:可能有1-17个这类项,可记录最大17*15个字符的长文件名(255个字符),文件名字符串不以空结束。

如果“是否使用”是0(0x41)这可能是删除文件集的一部分。

文件项集的第3部分是扩展文件名目录项,它的项类型是0xC1,前两个项指示这一项重复多少次,现在最大是17次。

扩展文件名目录项比较简单,它包括项类型,辅助标志和30字节的文件名存储区域。常规辅助标志显示簇分配是不可能的。是这样理解的,一个典型的目录项有标准的格式,偏移20是4字节的第一簇地址,偏移24是8字节的文件长度值。设置常规辅助标志分配是不可能的,实际偏移20是不包含簇地址的。这允许这个区域作为不同的数据来使用或重定义为其它的数据。

文件名是Unicode(16位)字符,不使用空字符串作为结束。字符串的实际长度在目录扩展流项中“文件名长度”中提供。现在文件名长度值范围是0-255。最大文件名是255个字符。

每个扩展文件名目录项包括15个字符,最多有17个这样的项可以保存长文件名。文件集最多包括19个项目,一个255个字符的文件名占用17个0xC1项。0xC1项有严格的顺序,如果顺序出错,文件系统会解释成错误的文件名。

在Carrier的书中(Carrier,2005)描述了FAT文件系统的文件名结构和支持传统的8.3文件名的长文件名项。在传统的FAT目录中描述一个文件有两种不同的项目类型,目录项的顺序首先出现的是文件名的结尾(项目是反序的)。在exFAT中没有8.3项目,exFAT中的顺序是文件名的结尾出现在最后。

下面的图详细说明文件名扩展目录项:

例子中的文件名为:“cryptography_cryp-203-32kbps.mp3”

图27 Winhex显示的文件名扩展目录项

图28删除前文件名扩展目录项格式的转换结果

图29删除后文件名扩展目录项格式的转换结果

文件名扩展目录项(0xC1)长度为32字节,它可以保存15个Unicode字符(每个字符2字节),例子中的文件名需要3个文件名扩展目录项来保荐,第三个项只有两个字节。图27,28分别是Winhex显示和程序的输出结果。当删除文件后,“是否使用”位变成了0,项目类型如图29所示成了0x41。

 

我们要如何帮助您?

评论 抢沙发

评论前必须登录!