[英]How can I get value after hashtag from URL in Java
我有一个URL,我想在图形用户界面中的井号后面打印ID值。 例如,我们有www.site.com/index.php#hello ,我想在GUI的标签上打印hello值。
如何在Netbeans中使用Java做到这一点?
使用String.split()
方法。
public static String getId(string url) {
return url.split("#")[1];
}
String.split()
返回一个字符串数组,该字符串数组由您传递给它的值(或#
分隔。
因为只需要#
之后的字符串,所以只需在其返回的数组中添加[1]
就可以使用它返回的数组中的第二项。
有关String.split()
更多信息,请转到Tutorials Point 。
顺便说一句,您所引用的URL的一部分是元素ID。 它用于跳转到网页上的元素。
URL url = new URL("http://www.anyhost.com/index.php#hello");
jLabel.setText(url.getRef());
编辑:根据@亨利评论:
我建议使用java.net.URI,因为它也处理编码。 Javadocs说:“请注意,URI类在某些情况下确实对其组件字段进行转义。建议的管理URL编码和解码的方法是使用URI,并使用toURI()和URI在这两个类之间进行转换。 .toURL()。”
这个评论:
为什么不只是做uri.getFragment()
URI uri = new URI("http://www.anyhost.com/index.php#hello");
jLabel.setText(uri.getFragment());
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.