我正在编写一个处理用户归档的util,其中一个测试归档文件名为"".export
.在我的代码中,我循环遍历所有文件扩展名,并检查文件扩展名以忽略某些文件类型(例如thumb.db).
当我写Path.GetExtension(v)
或Path.GetFileName(v)
我得到一个例外的消息"路径中的非法字符." "
显然是非法的,但在Windows上 - 编辑没关系,这是非法的我原本以为该字符是'
)我可以使用该文件名.我可以告诉它允许这个角色吗?我需要编写自己的GetExtension和GetFileName吗?我能做什么?
不,您不能强制文件系统接受它不想要的字符.Windows只是不允许您在文件名中包含引号.
您需要删除引号(可能用下划线或类似内容替换它们),或者为您正在使用的文件系统中无效的字符计算某种形式的转义.