url.getFile()和getpath()之间有什么区别?

时间:2012-08-13 04:26:03

标签: java http url path

java.net.url中,有getFile()方法和getPath()方法。

在我的测试中,它们都返回相同的结果:域名尾随斜杠后的完整路径和文件。

例如,http://www.google.com/x/y/z.html会为这两种方法返回x/y/z.html

有人可以详细说明Javadocs吗?

3 个答案:

答案 0 :(得分:22)

URL.getFile() javadocs说:

  

获取此URL的文件名。返回的文件部分将与getPath()相同,加上getQuery()的值的串联(如果有)。如果没有查询部分,则此方法和getPath()将返回相同的结果。

除非有查询字符串,否则它们将是相同的,例如网址中的?somename=value&somethingelse=value2

答案 1 :(得分:1)

URL.getFile()

  

获取此URL的文件名。返回的文件部分将与getPath()相同,加上getQuery()的值的串联(如果有)。如果没有查询部分,则此方法和getPath()将返回相同的结果。

答案 2 :(得分:0)

文件通常较长

new URL("http://www.google.com/x/y/z.html?v=1#chapter1").getFile();
// returns:  "/x/y/z.html?v=1"

,而不是路径:

new URL("http://www.google.com/x/y/z.html?v=1#chapter1").getPath();
// returns:  "/x/y/z.html"