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