5

我正在使用Path.Combine,其中一个字符串包含 Unicode 字符。我明白了{System.ArgumentException} exception; illegal characters in path

根据MSDN文件路径/名称可以有 unicode 字符。为什么我会得到这个异常?

编辑:

这是代码:

Path.Combine("C:\PDM\Silver","Amabel Bender QQQ")
4

3 回答 3

8

我解决了这个问题。第二个字符串中包含一个“制表符”字符,导致异常。(当我在这里粘贴字符串时没有出现)

谢谢大家,很抱歉造成混乱。

于 2008-12-15T09:34:26.783 回答
3

您的路径集中可能有双引号,因为Path.InvalidPathChars包括双引号。

这将使您的异常与您的 Unicode 字符无关...


刚刚看到您对问题的编辑:VB,没有引号。

那么,您的第二个字符串中是否复制了一个不可打印的字符,看起来像一个空格,就在您的“QQQ”字符串之前?
也试试 if"Amabel BenderQQQ""AmabelBenderQQQ"work(只是为了测试它是否与 'QQQ' 字符或空间有关)

于 2008-12-15T09:07:52.157 回答
2

如果您使用的是 C#,那么我确定您需要转义反斜杠

Path.Combine("C:\\PDM\\Silver","Amabel Bender QQQ")

如果您使用的是 VB,则不适用...

于 2008-12-15T09:16:40.500 回答