1

我有一个代码块可以在默认浏览器中打开给定的 URL。我在 IE 中打开带参数的 URL 时遇到问题,当默认浏览器是 FireFox 时它可以正常工作,但似乎 IE 正在删除这些参数!!!还有其他方法可以解决这个问题吗?

我正在使用的代码是:

 Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler \"" + url + "\"");

我对IE 中的“ ...test.html?param1=val1¶m2=val2 ”等 URL 有疑问

谢谢,

拉克什

4

3 回答 3

2

如果使用 Java 1.6,请尝试以下操作:

Desktop.getDesktop().browse(new URI(url))

此 ( java.awt.Desktop#browse(..)) 是打开默认浏览器的独立于平台的方式。

于 2010-07-27T12:18:00.980 回答
0

您可能需要以url某种方式转义/编码。该&字符对于命令解释器具有特殊含义。或者按照其他人所说的去做,不要使用 rundll32 来完成这项琐碎的任务。你是怎么想到尝试那样做的?这不是一个好方法。

于 2010-07-27T15:50:19.193 回答
0

感谢您的建议,我以不同的方式解决了它。我创建了一个带有参数值的 JavaScript 文件并在 HTML 文件中使用它,可能不是一个干净的解决方案,但对我有用:)

于 2012-11-11T13:24:20.927 回答