-1

我正在尝试在将链接到我的 Github 的应用程序中添加指向“关于”窗口的链接。我有点知道这个过程,但是,它的作用似乎很复杂,我必须输入所有错误捕获。我确信 URI 语法是正确的,有没有办法跳过这个捕获?这个变量保持最终状态,除非资源位置的语法发生变化,否则应该没问题

代码:

        //TODO: Simplify?
        String gitLocation = "https://github.com/DanubeRS";
        try {
            final URI gitUri = new URI(gitLocation);

            //Add the github button action (link to site)
            githubButton.addActionListener(new ActionListener() {
                @Override
                public void actionPerformed(ActionEvent e) {
                    try {
                        Desktop.getDesktop().browse(gitUri.resolve(gitUri));  //Try to open URL
                    } catch (IOException e1) {
                        //URI unresolvable
                        e1.printStackTrace();
                    }
                }
            });
        } catch (URISyntaxException e) {
            e.printStackTrace();
        }
4

1 回答 1

4

您可以使用方便的方法URI.create(String str),它URISyntaxExceptionIllegalArgumentException. 来自 JavaDoc:

提供此方法用于已知给定字符串是合法 URI 的情况,例如在程序中声明的 URI 常量,因此如果字符串不这样解析将被视为编程错误。直接抛出 URISyntaxException 的构造函数应该用于从用户输入或其他可能容易出错的源构造 URI 的情况。

IOException抛出的表示Desktop.browse()没有设置默认浏览器。您可能应该通过通知用户来优雅地处理这个问题。

于 2013-01-22T05:50:22.900 回答