System.ArgumentException недопустимые символы в пути

Я использую Path.Combine, и одна из строк содержит символы Unicode. Я получаю исключение {System.ArgumentException}; недопустимые символы в пути.

В соответствии с MSDN filepath / name может иметь символы Unicode. Почему я получаю это исключение?

Изменить: вот код:

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

3 ответа

Решение

Я понял проблему. Вторая строка содержит символ табуляции, вызывающий исключение. (это не обнаружилось, когда я вставил строку здесь)

Спасибо всем и извините за путаницу.

Вы можете иметь двойные кавычки в вашем наборе путей, так как Path.InvalidPathChars включает в себя двойные кавычки.

Это сделало бы ваше исключение не связанным с вашим персонажем Unicode...


Только что посмотрел твои правки на вопрос: VB, без кавычек.

Так может быть у вас есть непечатный символ, скопированный во вторую строку, которая выглядит как пробел перед строкой 'QQQ'?
Попробуйте также, если "Amabel BenderQQQ" или же "AmabelBenderQQQ" работать (просто чтобы проверить, связано ли это с символами 'QQQ' или с пробелом)

Если вы используете C#, то я уверен, что вам нужно избежать обратной косой черты

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

не применимо, если вы используете VB, хотя...

Другие вопросы по тегам