FAT文件系统总结(三)
八、 长文件名
长文件名是在原有的 FAT 系统上引入的,在只支持短文件名的系统上,长文件名就像是不存在一样。为了达到这个目标,长文件名通过在原有的目录项中引入新的属性字(Attribute)得以实现。
ATTR_LONG_NAME = ATTR_READ_ONLY |
ATTR_HIDDEN |
ATTR_SYSTEM |
ATTR_VOLUME_ID
判断一个目录项是否为长文件名,要通过下面 MASK 实现:
ATTR_LONG_NAME_MASK = ATTR_READ_ONLY |
ATTR_HIDDEN |
ATTR_SYSTEM |
ATTR_VOLUME_ID |
ATTR_DIRECTORY |
ATTR_ARCHIVE
长文件名目录项数据结构如下:
长文件名字符采用 Unicode 编码。
Checksum 算法,用 C 语言实现如下:
//------------------------------------------------------------------------
|