您的位置:首页 > 其它

Windows的长文件名(long file names)与短文件名(short file names)

2016-05-04 11:08 337 查看
在比较新的文件系统(如:FAT32,exFat,NTFS等)里,Windows将长文件名以UNICODE的形式保存在disk上。为了兼容以前的系统,Windows同时会生成一个短文件名(8.3 aliasing)。短文件名的生成规则参见https://support.microsoft.com/en-us/kb/142982

在Win 7 及以后的系统中,短文件名格式可以通过“fsutil8dot3name set” 命令开启或关闭。如果关闭8.3 aliasing功能,则此时新创建的文件不会包含短文件名。即使之后再次打开8.3并修改文件名,在关闭状态下创建的文件仍然不会含有短文件名。

可以通过GetShortPathName()或WIN32_FIND_DATA的cAlternateFileName变量来获取短文件名。

References:

https://social.technet.microsoft.com/Forums/systemcenter/en-US/2c424a03-ffb3-45e4-a152-c0c9ebcebeb2/enable-83-short-file-name-support-to-windows-7?forum=configmgrgeneral

https://msdn.microsoft.com/en-us/library/windows/desktop/aa365247(v=vs.85).aspx#short_vs._long_names

https://msdn.microsoft.com/en-us/library/windows/desktop/aa365740(v=vs.85).aspx


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: