java命名空间java.net类uri的类成员方法:
uri定义及介绍
本文导语:
uri
public uri(string scheme,
string userinfo,
string host,
int port,
string path,
string query,
string fragment)
throws urisyntaxexception
根据给定的组成部分构造一个分层 uri。
如果给定了方案,...
public uri(string scheme,
string userinfo,
string host,
int port,
string path,
string query,
string fragment)
throws urisyntaxexception
- 根据给定的组成部分构造一个分层 uri。
如果给定了方案,则路径(如果也给定)必须为空或以斜线字符 ('/') 开始。否则通过为相应的参数传入 null,或者在 port 参数的情况下,传入 -1,新 uri 的组成部分可能保留为未定义。
此构造方法首先根据 rfc 2396 中的 5.2 节的步骤 7 指定的规则从给定的组成部分构建一个 uri 字符串:
起初,结果字符串为空。
如果给定了方案,则将方案添加到结果后面,后面再加一个冒号 (':') 字符。
如果给定了用户信息、主机或端口,则添加 "//" 字符串。
如果给定了用户信息,则添加该信息,之后是“商用 at”字符 ('@')。任何不属于 unreserved、punct、escaped 或
iis7站长之家 类别的字符都应该进行 引用。
如果给定了主机,则添加该主机。如果主机为字面值 ipv6 地址但未括在方括号 ('[' 和 ']') 中,则添加方括号。
如果给定了端口名,则添加一个冒号字符 (':'),之后是十进制形式的端口号。
如果给定了路径,则添加该路径。任何不属于 unreserved、punct、escaped 或 other 类别的字符,以及不等于斜线字符 ('/') 或“商用 at”字符 ('@') 的字符都应该进行引用。
如果给定了查询,则添加一个问号字符 ('?'),之后是查询。任何不是合法 uri 字符的字符都应该进行引用。
最后,如果给定了片段,则添加一个井字符 ('#'),之后是片段。任何非法的 uri 字符都应该进行引用。
然后对得到的 uri 字符串进行解析,正如调用 uri(string)
构造方法一样,然后根据结果情况调用 parseserverauthority()
;这可能导致抛出 urisyntaxexception
。
- 参数:
scheme
- 方案名userinfo
- 用户信息和授权信息host
- 主机名port
- 端口名path
- 路径query
- 查询fragment
- 片段
- 抛出:
urisyntaxexception
- 如果方案和路径都已给出但路径为相对的,如果从给定组成部分构造的 uri 字符串违背 rfc 2396,或者如果字符串的授权组成部分存在但无法解析为基于服务器的授权