我正在使用Path.Combine,其中一个字符串包含Unicode字符。我得到{System.ArgumentException}异常;路径中的非法字符。
根据MSDN文件路径/名称可以有unicode字符。为什么我会得到这个例外?
编辑: 这是代码:
Path.Combine(“C:\ PDM \ Silver”,“Amabel Bender QQQ”)
答案 0 :(得分:5)
我弄明白了这个问题。第二个字符串中包含一个“tab”字符,导致异常。 (当我在这里粘贴字符串时没有出现)
谢谢大家,对此感到抱歉。
答案 1 :(得分:3)
您的路径集合中可能有double quotes,因为Path.InvalidPathChars
包含双引号。
这会使你的异常与你的Unicode角色无关......
刚刚看到你的问题编辑:VB,没有引号。
你可能在第二个字符串中复制了一个不可打印的字符,它看起来像一个空格,就在你的'QQQ'字符串之前?
如果"Amabel BenderQQQ"
或"AmabelBenderQQQ"
工作,也请尝试(只是为了测试它是否与'QQQ'字符或空格有关)
答案 2 :(得分:2)
如果你正在使用C#,那么我确定你需要逃避反斜杠
Path.Combine("C:\\PDM\\Silver","Amabel Bender QQQ")
如果您使用的是VB,则不适用...