2013-04-19 3 views
8

Я загружаю файл в пункт назначения, предоставляя путь к файлу. Он отлично работает, когда путь к файлу, какJava - путь к файлу - Неверная escape-последовательность

String filePath = "D:\\location"; 

Но обеспечивая при этом местоположение сервера как

String filePath = request.getRealPath("\\10.0.1.18\downloads\upload"); 

производят ошибки недопустимой последовательности.

Что не так на пути (у меня есть полные привилегии для местоположения), и если не так, как правильно империментировать.

Спасибо за помощь заранее ////

+0

Возможный дубликат http://stackoverflow.com/questions/9445196/invalid-escape-sequence-valid-ones-are-b-t-n-f-r – Dariusz

ответ

12

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

Проблема заключается в том, что вы не избежать обратный слэш. Вам нужно:

String filePath = request.getRealPath("\\\\10.0.1.18\\downloads\\upload"); 

Затем содержимое строки будет просто

\\10.0.1.18\downloads\upload 

Это точно так же, как и в первой строке вы показали там, где это:

String filePath = "D:\\location"; 

. .. на самом деле создаст строку с содержанием:

D:\location 

См. section 3.10.6 of the Java Language Specification для получения более подробной информации об управляющих последовательностях в символах и строковых литералах.

4

использование двойной слеш \\! Это особый шаблон побега. Как \ n или \ r.

Смежные вопросы