我通过提供filepath将文件上传到目的地.它在文件路径类似时工作正常
String filePath = "D:\\location";
Run Code Online (Sandbox Code Playgroud)
但是提供像服务器一样的位置
String filePath = request.getRealPath("\\10.0.1.18\downloads\upload");
Run Code Online (Sandbox Code Playgroud)
产生无效转义序列的错误.
在路径上有什么不对(我有充分的位置),如果错误,它是如何正确地恭维它.
提前感谢您的帮助////
Jon*_*eet 12
这是一个编译时错误,所以它不能与权限等有关.
问题是你没有逃避反斜杠.你需要:
String filePath = request.getRealPath("\\\\10.0.1.18\\downloads\\upload");
Run Code Online (Sandbox Code Playgroud)
然后字符串的内容将是正确的
\\10.0.1.18\downloads\upload
Run Code Online (Sandbox Code Playgroud)
这与您显示的第一行完全相同,其中:
String filePath = "D:\\location";
Run Code Online (Sandbox Code Playgroud)
...实际上会创建一个内容为的字符串:
D:\location
Run Code Online (Sandbox Code Playgroud)
有关字符和字符串文字中转义序列的更多详细信息,请参见Java语言规范的第3.10.6节.