今天在app测试时出现标题所示错误,导致无法正常重server端下载文件;
通过查看日志,了解到是由于下载链接中出现空格、中文等特殊字符,导致连接地址不合法;
在网上也查看了很多描述相关问题解决方案的帖子,很有启发--
但是考虑到方便自己和大家,还是把问题和解决方案贴出来
app这部分功能如下:服务端有各种类型文件(如:文本,图片,html文件等等)提供下载
最终文件下载链接地址,形如:http://127.0.0.1:8001/dir/文件名
其中文件名没法控制,可能出现特殊字符,导致地址不合法
下面直接贴出解决方案:
//fileDir为文件目录
String filedir = URLEncoder.encode(fileDir,"UTF-8").replace("+", "%20");
urlPath = url+filedir;
通过对文件目录特殊字符转换,在拼接到服务器地址,成功解决!
参考文章:java路径问题