System.ArgumentException 路径中存在非法字符
我正在使用 Path.Combine
,并且其中一个字符串包含 Unicode 字符。 我收到 {System.ArgumentException} 异常; 路径中存在非法字符
。
根据 MSDN 文件路径/名称可以包含 unicode 字符。 为什么我会收到此异常?
编辑:
这是代码:
Path.Combine("C:\PDM\Silver","Amabel Bender QQQ")
I am using Path.Combine
, and one of the strings contain a Unicode characters. I get {System.ArgumentException} exception; illegal characters in path
.
According to MSDN filepath/name can have unicode characters. Why do I get this exception?
Edit:
Here is the code:
Path.Combine("C:\PDM\Silver","Amabel Bender QQQ")
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我解决了这个问题。 第二个字符串中包含导致异常的“制表符”字符。 (当我将字符串粘贴到此处时,它没有出现)
谢谢大家,并对造成的困惑表示歉意。
I figured out the problem. The second string contains a "tab" character in it causing the exception. (that didn't showed up when I pasted the string here)
Thanks everyone and sorry for the confusion.
您的集合中可能有双引号路径数,自
Path.InvalidPathChars
包含双引号。
这将使您的异常与您的 Unicode 字符无关...
刚刚看到您对问题的编辑:VB,没有引号。
那么,您可能在第二个字符串中复制了一个不可打印的字符,它看起来像一个空格,位于“QQQ”字符串之前?
还请尝试
"Amabel BenderQQQ"
或"AmabelBenderQQQ"
是否有效(只是为了测试它是否与 'QQQ' 字符或空格相关)You may have double quotes in your set of paths, since
Path.InvalidPathChars
includes double-quotes.That would make your exception unrelated to your Unicode character...
Just saw your edit of your question: VB, no quotes.
So may be you have a non-printable character copied in your second string, which looks like a space, just before your 'QQQ' string ?
Try also if
"Amabel BenderQQQ"
or"AmabelBenderQQQ"
work (just to test if it is related to 'QQQ' chars or to the space)如果您使用的是 C#,那么我确信您需要转义反斜杠,
但如果您使用的是 VB,则不适用...
If you are using C# then I'm sure you need to escape the back-slashes
not applicable if you are using VB though...