从Java的Desktop.getDesktop()设置查询字符串。browse(URI uri);

时间:2014-06-20 19:33:42

标签: java html url uri query-string

我试过谷歌搜索,但我找不到答案。我正在编写一个纯Java桌面应用程序。帮助系统使用Desktop类浏览功能启动并为其提供URI。当我添加"?那么URI在Java中失败了。我想将程序版本号传递给浏览器中的离线帮助页面,但我无法弄清楚如何设置查询字符串。

我在RedHat 6上运行。我正在使用此代码:

uri = new URI("file", "", programPath, "version=1.0.3", "");
Desktop.getDesktop().browse(uri);

我在浏览功能上遇到IOException。它说的是"无法显示URI:"

如果我采用完整的uri路径并将其粘贴到我的浏览器中,它就可以了。我完全被这个难过......

1 个答案:

答案 0 :(得分:0)

好吧所以我从来没有按照我想要的方式工作,但是如果我使用只需要一个字符串的URI构造函数然后我将它作为正常的路径提供它总是工作,然后添加“#+ versionNumberVar”;然后它的作品!这是令人沮丧的,因为它不适用于“?version =”+ versionNumberVar,但我最终得到了我需要的东西。此外,那些其他构造函数不适合我,这是令人惊讶的。不幸的是,URI错误消息很神秘,只是说“无法显示URI”。