Java网络编程之URI、URL研究专题四(2)

文章作者 100test 发表时间 2007:03:14 16:30:46
来源 100Test.Com百考试题网


在编译uridemo2后,在命令行输入java uridemo2 x/y/../z/./q,将看到下面的输出:

normalized uri = x/z/q

上面的输出显示y、..和.消失了。这是因为..意味着你想直接在x下面访问名字空间的z部分,.意味着你希望访问与z部分相关的名字空间的q部分。

uri 通过提供resolve(string uri)、resolve(uri uri)和relativize(uri uri)方法支持反向解析和相对化操作。如果uri引用是空的(null)这三个方法都会产生nullpointerexception对象。同样,如果指定的uri违反了rfc 2396语法规则,resolve(string uri)通过的内部的create(string uri)调用间接地产生一个illegalargumentexception对象。

列表3的代码演示了resolve(string uri)和relativize(uri uri)。

列表3: uridemo3.java

// uridemo3.java

import java.net.*.

class uridemo3

{

ublic static void main (string [] args) throws exception

{

if (args.length != 2)

{

system.err.println ("usage: "

"java uridemo3 uribase urirelative").

return.

}

uri uribase = new uri (args [0]).

相关文章


Java网络编程之URI、URL研究专题五(1)
Java网络编程之URI、URL研究专题三(1)
Java网络编程之URI、URL研究专题四(2)
Java网络编程之URI、URL研究专题三(2)
超级简单的数据库连接池
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛