gpt4 book ai didi

java - 在 JAVA 中合并两个 URL

转载 作者:行者123 更新时间:2023-11-30 06:30:37 25 4
gpt4 key购买 nike

我将两个 url 与以下代码合并。

String strUrl1 = "http://www.domainname.com/path1/2012/04/25/file.php";
String arg = "?page=2";
URL url1;
try {
url1 = new URL(strUrl1);
URL reconUrl1 = new URL(url1,arg);
System.out.println(" url : " + reconUrl1.toString());
} catch (MalformedURLException ex) {
ex.printStackTrace();
}

我对结果感到惊讶:http://www.domainname.com/path1/2012/04/25/?page=2

我希望它是(浏览器做什么):http://www.domainname.com/path1/2012/04/25/file.php?page=2

关于构造函数 URL(URL 上下文,字符串规范)的 javadoc 解释它应该遵守 RFC。

我做错了什么?

谢谢

更新:

This is the only problem I encountered with the fonction.
The code already works in all others cases, like browser do
"domain.com/folder/sub" + "/test" -> "domain.com/test"
"domain.com/folder/sub/" + "test" -> "domain.com/folder/sub/test"
"domain.com/folder/sub/" + "../test" -> "domain.com/folder/test"
...

最佳答案

您始终可以先合并字符串,然后根据合并的字符串创建 URL。

  StringBuffer buf = new StringBuffer();
buf.append(strURL1);
buf.append(arg);
URL url1 = new URL(buf.toString());

关于java - 在 JAVA 中合并两个 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10348903/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com