解决异常 java.net.URISyntaxException: Illegal character in query at index

java.net.URISyntaxException 表示你在尝试创建一个 URI 对象时,传递了一个非法的 URI 字符串

这个异常通常是因为 URI 字符串中包含了不合法的字符,比如空格、特殊字符等。在 URI 中,某些字符是需要进行编码的,例如空格会被编码为 %20

要解决这个异常,亲测以下几个方法:

检查 URI 字符串 :仔细检查你传递给 new URI() 构造函数的字符串,确保其中不包含非法字符。

对 URI 进行编码 :如果 URI 字符串中包含了特殊字符或空格,你可以使用 Java 提供的 URLEncoder 类对它们进行编码,然后再传递给 new URI()

复制代码
String urlString = "https://example.com/page with space";
String encodedUrlString = URLEncoder.encode(urlString, "UTF-8");
URI uri = new URI(encodedUrlString);

使用 URL :如果你只需要对 URL 进行简单的操作,你可以考虑使用 URL 类,它对 URL 进行了更高层次的封装,并提供了一些方便的方法。

复制代码
URL url = new URL("https://example.com/page with space");
相关推荐
游乐码14 分钟前
c#泛型约束
开发语言·c#
Dontla26 分钟前
go语言Windows安装教程(安装go安装Golang安装)(GOPATH、Go Modules)
开发语言·windows·golang
chushiyunen26 分钟前
python rest请求、requests
开发语言·python
铁东博客32 分钟前
Go实现周易大衍筮法三变取爻
开发语言·后端·golang
baidu_huihui34 分钟前
在 CentOS 9 上安装 pip(Python 的包管理工具)
开发语言·python·pip
南 阳35 分钟前
Python从入门到精通day63
开发语言·python
lbb 小魔仙36 分钟前
Python_RAG知识库问答系统实战指南
开发语言·python
java1234_小锋36 分钟前
Java高频面试题:Springboot的自动配置原理?
java·spring boot·面试
末央&1 小时前
【天机论坛】项目环境搭建和数据库设计
java·数据库
枫叶落雨2222 小时前
ShardingSphere 介绍
java