2013-04-19 33 views
8

ファイルパスを指定してファイルを送り先に送ります。 これは、ファイルパスがJava - ファイルパス - 無効なエスケープシーケンス

String filePath = "D:\\location"; 

のようなものであるとき、正常に動作しますが、無効なエスケープシーケンスの

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

農産物エラーのようにサーバーの場所を提供しながら。

パスに何が間違っているのですか(私はその場所に完全なpriveledgesを持っています)。事前に助けを

おかげ////

+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と同じです。

関連する問題