【问题标题】:System.ArgumentException illegal characters in pathSystem.ArgumentException 路径中的非法字符
【发布时间】:2010-09-26 22:29:33
【问题描述】:
我正在使用Path.Combine,其中一个字符串包含 Unicode 字符。我得到{System.ArgumentException} exception; illegal characters in path。
根据MSDN文件路径/名称可以有unicode字符。为什么会出现此异常?
编辑:
代码如下:
Path.Combine("C:\PDM\Silver","Amabel Bender QQQ")
【问题讨论】:
标签:
.net
exception
argumentexception
illegal-characters
path-combine
【解决方案1】:
我发现了问题所在。第二个字符串中包含一个“制表符”字符,导致异常。 (当我在这里粘贴字符串时没有出现)
谢谢大家,很抱歉造成混乱。
【解决方案2】:
您的路径集中可能有double quotes,因为Path.InvalidPathChars 包含双引号。
这将使您的异常与您的 Unicode 字符无关...
刚刚看到您对问题的编辑:VB,没有引号。
那么您的第二个字符串中是否复制了一个不可打印的字符,看起来像一个空格,就在您的“QQQ”字符串之前?
如果"Amabel BenderQQQ" 或"AmabelBenderQQQ" 工作也试试(只是为了测试它是否与'QQQ' 字符或空间有关)
【解决方案3】:
如果您使用的是 C#,那么我确定您需要转义反斜杠
Path.Combine("C:\\PDM\\Silver","Amabel Bender QQQ")
如果您使用的是 VB,则不适用...