从少量字符串创建的Java URL

时间:2014-07-14 18:39:54

标签: java url

我想使用:现有网址和2个字符串

创建网址

我找到了

Create URL from a String
File.separator or File.pathSeparator

但我想创建它而不输入'/'

  

String part1 =“txt1”;

     

String part2 =“txt2”;

     

网址urlBase =新网址(部分地址);

现在我可以写

  

网址urlNew = urlBase.toURI()。resolve(part1).toURL();

但是如何添加part2目标是获取adress / txt1 / txt2

2 个答案:

答案 0 :(得分:0)

这会有帮助吗?

public static void main(String[] args) throws MalformedURLException {
        URL domain = new URL("http://google.com");
        URL url = new URL(domain, "test");
        System.out.println(url.toString());
    }

或者

public static void main(String[] args) throws MalformedURLException {
        URL domain = new URL("http://google.com/sample/text/a");
        URL url = new URL(domain, "test");
        System.out.println(url.toString());
    }

请注意,它会将字符串添加到您的域中。

答案 1 :(得分:0)

这个怎么样?

public static void main(String[] args) throws Exception {
    URL urlBase = new URL("http://google.com/2");
    String part1 = "test1/3";
    String part2 = "test2";
    System.out.println(
            urlBase.toString()
            + new URL(urlBase, part1).getPath()
            + new URL(urlBase, part2).getPath()
        );
}

不需要任何角色:)

如果你有一个空字符串,它就不会工作,所以这就是它的解决方案:

public static void main(String[] args) throws Exception {
        URL urlBase = new URL("http://google.com/2");
        String part1 = "test1/3";
        String part2 = "test2";
        System.out.println(
                urlBase.toString()
                + (part1.isEmpty() ? "" : new URL(urlBase, part1).getPath())
                + (part2.isEmpty() ? "" : new URL(urlBase, part2).getPath())
            );
    }