Java中URL类中的getHost和getAuthority方法有什么区别?
我有一系列不同形式的字符串(URL):
> http:// domain name.anything / anypath 这些字符串保存在CSV文件中.我需要解析每个URL才能获得域名,域名.一切.即第一个之后的部分.在第一个/之前. 我使用split方法分隔字符串,然后将每个字符串转换为URL,然后使用toAuthority函数仅获取域名.问题在于,对于我来说,机构和主持人都做同样的工作,它们包括www.我不想要的.虽然,在Oracle的tutorial中,似乎toAuthority应该返回没有www的域名. 如何在没有www的情况下提取域名部分.的URL? 解决方法
要真正理解这一点,你应该阅读URI specification – RFC 2396. 简短的回答是权限组件由主机组件以及可选的端口号,用户名和密码组成……取决于所使用的URL方案.
你调用getHost(),测试它是否以字符串“www”开头.如果它,你删除它. 但在你开始做这样的事情之前,你需要了解删除“www.”可能会为您提供一个不起作用的URL,或者解析为与原始URL解析到的文档或服务不同的文档或服务.无偿收集URL是一个坏主意……除非您详细了解有关网站的组织方式. “foo.com”和“www.foo.com”是同一个地方的惯例只是一个惯例,很多网站都没有实现它.删除“www.”这将是一个坏主意,因为它可能会将可解析的URL转换为无法解析的URL. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |