URL报错:unknown protocol,未知协议
问题分析:
在使用new URL(filePath)出现此错误,原因是传入的字符串不是一个URL,所以无法识别。
解决方法:
- 若是本地文件,检查路径前面是否添加了file://
示例:String filePath = "D:/Users/Administrator/Desktop/test.txt"; // 添加文件协议 filePath = "file://"+filePath; URL url = new URL(filePath);
2.若是网络路径, 检查传入的字符串是否以http:// 开头,或者以https://开头
扩展
-
报错:unknown protocol: f
解决一: 解析的文件包括路径不能有中文字符
解决二:将URL路径转码URLEncoder.encode(filePath, "utf-8");
-
URL常用协议类型:
① file 资源是本地计算机上的文件。格式file://
② ftp 通过 FTP访问资源。格式 FTP://
③ http 通过 HTTP 访问该资源。 格式 http://
④ https 通过安全的 HTTPS 访问该资源。 格式 https://
⑤ mailto 资源为电子邮件地址,通过 SMTP 访问。 格式 mailto: