【发布时间】:2012-11-19 02:44:41
【问题描述】:
我正在尝试使用 HttpClient 将文件上传/删除到 webdav 服务器。但是,只要我的文件名由空格组成,就没有任何工作。我收到一条错误消息,提示“INVALID URI--- Escaped absolute path not valid”。
这是我的 URL = "http://localhost:8080/test file.txt"
private boolean delete(String fileName) {
HttpClient client = new HttpClient();
HttpHost host = new HttpHost(WEBDAV_URL, PORT_NUMBER);
client.getHostConfiguration().setHost(host);
DeleteMethod del = new DeleteMethod(WEBDAV_URL_COMPLETE + fileName);
try {
client.executeMethod(del);
return true;
} catch (HttpException e) {
e.printStackTrace();
return false;
} catch (IOException e) {
e.printStackTrace();
return false;
}
}
我应该使用任何方法或 URL 解析来解决问题
谢谢
编辑,通过将空格替换为“%20”找到解决方案。
**
URL.replaceAll(" ","%20")
**
【问题讨论】:
-
我遇到了同样的问题。但是 URL 包含一个“-”,在这种情况下我需要用 %2D 替换。
标签: java url absolute-path apache-commons-httpclient