【问题标题】: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,则不适用...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-07
      • 2019-08-30
      • 1970-01-01
      相关资源
      最近更新 更多