禁止使用文件名字符的“综合指南”在Windows上不起作用,因为它保留了文件名和字符。是的,
*
"
?禁止像和这样的字符
,但是有无限多个名称仅由被禁止的有效字符组成。例如,空格和点是有效的文件名字符,但禁止仅由那些字符组成的名称。
Windows不会区分大小写字符,因此,
A如果
a已经存在一个命名的文件夹,则无法创建一个命名的文件夹。更糟的,似乎允许的名称,如
PRN和
CON,以及许多其他名称,是保留的,不允许使用。Windows也有几个长度限制;如果将文件名移动到另一个文件夹,则在一个文件夹中有效的文件名可能变得无效。命名文件和文件夹的规则 在Microsoft文档中。
通常,您不能使用用户生成的文本来创建Windows目录名称。如果你想允许用户他们想要什么名字,你必须创建安全的名字,如
A,
AB,
A2等,存储用户生成的名称和应用程序数据文件的路径等价物,并在你的应用程序中执行路径映射。
如果绝对必须允许用户生成的文件夹名称,则判断它们是否无效的唯一方法是捕获异常并假定名称无效。即使这样也充满了危险,因为拒绝访问,脱机驱动器和驱动器空间不足引发的异常与可以为无效名称引发的异常重叠。您正在打开一罐巨大的伤害。



