URL 构造函数
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
| 名称 | 说明 |
|---|---|
| URL(String) |
从 |
| URL(URL, String) |
通过分析指定上下文中的给定规范来创建 URL。 |
| URL(URL, String, URLStreamHandler) |
通过使用指定上下文中的指定处理程序分析给定规范来创建 URL。 |
| URL(String, String, String) |
从指定 |
| URL(String, String, Int32, String) |
|
| URL(String, String, Int32, String, URLStreamHandler) |
|
URL(String)
从String表示形式创建对象URL。
[Android.Runtime.Register(".ctor", "(Ljava/lang/String;)V", "")]
public URL(string? spec);
[<Android.Runtime.Register(".ctor", "(Ljava/lang/String;)V", "")>]
new Java.Net.URL : string -> Java.Net.URL
参数
- spec
- String
要 String 分析为 URL。
- 属性
例外
如果无法解析为 URL,则为 <
注解
从String表示形式创建对象URL。
此构造函数等效于对具有第一个参数的双参数构造函数的 null 调用。
Java文档java.net.URL.URL(java.lang.String)。
本页的某些部分是根据 创建和共享的工作进行的修改,并根据 许可证中所述的条款使用。
适用于
URL(URL, String)
通过分析指定上下文中的给定规范来创建 URL。
[Android.Runtime.Register(".ctor", "(Ljava/net/URL;Ljava/lang/String;)V", "")]
public URL(Java.Net.URL? context, string? spec);
[<Android.Runtime.Register(".ctor", "(Ljava/net/URL;Ljava/lang/String;)V", "")>]
new Java.Net.URL : Java.Net.URL * string -> Java.Net.URL
参数
- context
- URL
要分析规范的上下文。
- spec
- String
要 String 分析为 URL。
- 属性
例外
如果无法解析为 URL 或具有不受支持的协议,则为 <
注解
通过分析指定上下文中的给定规范来创建 URL。
从给定的上下文 URL 和规范参数创建新 URL,如RFC2396 ”统一资源标识符:泛型 * 语法商;: <blockquote>
<scheme>://<authority><path>?<query>#<fragment>
</blockquote> 该引用解析为方案、颁发机构、路径、查询和片段部分。 如果路径组件为空且方案、颁发机构和查询组件未定义,则新 URL 是对当前文档的引用。 否则,新 URL 中使用规范中存在的片段和查询部分。
如果方案组件是在给定规范中定义的,并且与上下文的方案不匹配,则仅根据规范将新 URL 创建为绝对 URL。 否则,方案组件继承自上下文 URL。
如果规范中存在颁发机构组件,则规范被视为绝对,规范颁发机构和路径将替换上下文颁发机构和路径。 如果规范中缺少颁发机构组件,则新 URL 的颁发机构将从上下文继承。
如果规范的路径组件以斜杠字符 “/” 开头然后,路径被视为绝对路径,规范路径将替换上下文路径。
否则,路径将被视为相对路径,并追加到上下文路径,如RFC2396中所述。 此外,在这种情况下,路径通过删除由 “ 发生的目录更改进行规范化。“和 “。“。
有关 URL 分析的更详细说明,请参阅RFC2396。
Java文档java.net.URL.URL(java.net.URL, java.lang.String)。
本页的某些部分是根据 创建和共享的工作进行的修改,并根据 许可证中所述的条款使用。
适用于
URL(URL, String, URLStreamHandler)
通过使用指定上下文中的指定处理程序分析给定规范来创建 URL。
[Android.Runtime.Register(".ctor", "(Ljava/net/URL;Ljava/lang/String;Ljava/net/URLStreamHandler;)V", "")]
public URL(Java.Net.URL? context, string? spec, Java.Net.URLStreamHandler? handler);
[<Android.Runtime.Register(".ctor", "(Ljava/net/URL;Ljava/lang/String;Ljava/net/URLStreamHandler;)V", "")>]
new Java.Net.URL : Java.Net.URL * string * Java.Net.URLStreamHandler -> Java.Net.URL
参数
- context
- URL
要分析规范的上下文。
- spec
- String
要 String 分析为 URL。
- handler
- URLStreamHandler
URL 的流处理程序。
- 属性
例外
如果找不到给定字符串 spec 作为 URL 分析或无效协议,则为 。
注解
通过使用指定上下文中的指定处理程序分析给定规范来创建 URL。 如果处理程序为 null,则分析与两个参数构造函数一样发生。
Java文档java.net.URL.URL(java.net.URL, java.lang.String, java.net.URLStreamHandler)。
本页的某些部分是根据 创建和共享的工作进行的修改,并根据 许可证中所述的条款使用。
适用于
URL(String, String, String)
从指定 protocol 的名称、 host 名称和 file 名称创建 URL。
[Android.Runtime.Register(".ctor", "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V", "")]
public URL(string? protocol, string? host, string? file);
[<Android.Runtime.Register(".ctor", "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V", "")>]
new Java.Net.URL : string * string * string -> Java.Net.URL
参数
- protocol
- String
要使用的协议的名称。
- host
- String
主机的名称。
- file
- String
主机上的文件。
- 属性
例外
如果所有参数的组合不表示有效的 URL 或协议无效,则为 。
注解
从指定 protocol 的名称、 host 名称和 file 名称创建 URL。 使用指定协议的默认端口。
此方法等效于调用四个参数构造函数,其参数为 protocol、host和-1file。
此构造函数不对输入执行任何验证。
Java文档java.net.URL.URL(java.lang.String, java.lang.String, java.lang.String)。
本页的某些部分是根据 创建和共享的工作进行的修改,并根据 许可证中所述的条款使用。
适用于
URL(String, String, Int32, String)
URL从指定protocol对象、 porthost数字和file对象创建对象。
[Android.Runtime.Register(".ctor", "(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;)V", "")]
public URL(string? protocol, string? host, int port, string? file);
[<Android.Runtime.Register(".ctor", "(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;)V", "")>]
new Java.Net.URL : string * string * int * string -> Java.Net.URL
参数
- protocol
- String
要使用的协议的名称。
- host
- String
主机的名称。
- port
- Int32
主机上的端口号。
- file
- String
主机上的文件
- 属性
例外
如果所有参数的组合不表示有效的 URL 或协议无效,则为 。
注解
URL从指定protocol对象、 porthost数字和file对象创建对象。
host 可以表示为主机名或文本 IP 地址。 如果使用 IPv6 文本地址,则应用方括号('['以及 ']'RFC 2732 指定的)括起来;但是,RFC 中定义的文本 IPv6 地址格式;2373:也接受 IP 版本 6 寻址体系结构http://www.ietf.org/rfc/rfc2373.txt。
指定多个port-1指示 URL 应使用协议的默认端口。
如果这是使用指定协议创建的第一个 URL 对象,则为该协议创建流协议处理程序对象:URLStreamHandler<ol><li>如果应用程序以前已将实例设置为流处理程序工厂,则createURLStreamHandler使用协议字符串作为参数调用该实例URLStreamHandlerFactory的方法来创建流协议处理程序。
<li>如果 URLStreamHandlerFactory 尚未设置,或者工厂 createURLStreamHandler 的方法返回 null,则构造函数将查找系统属性的值: <blockquote>
java.protocol.handler.pkgs
</blockquote> 如果系统属性的值不是 null,则将其解释为用垂直斜杠字符“”|分隔的包列表。 构造函数尝试加载名为: <blockquote 的类>
<<i>package</i>>.<<i>protocol</i>>.Handler
URLStreamHandler,则尝试列表中的下一个包。
<li>如果上一步找不到协议处理程序,则构造函数会尝试从系统默认包加载。
<blockquote>
<<i>system default package</i>>.<<i>protocol</i>>.Handler
</blockquote> 如果此类不存在,或者如果该类存在,但它不是子类 URLStreamHandler,则会引发 a MalformedURLException 。
</ol>
以下协议的协议处理程序保证存在于搜索路径上:- <blockquote>
http, https, file, and jar
<其他协议的 /blockquote> 协议处理程序也可能可用。
此构造函数不对输入执行任何验证。
Java文档java.net.URL.URL(java.lang.String, java.lang.String, int, java.lang.String)。
本页的某些部分是根据 创建和共享的工作进行的修改,并根据 许可证中所述的条款使用。
适用于
URL(String, String, Int32, String, URLStreamHandler)
URL从指定protocol对象、hostport数字file和handler对象创建对象。
[Android.Runtime.Register(".ctor", "(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/net/URLStreamHandler;)V", "")]
public URL(string? protocol, string? host, int port, string? file, Java.Net.URLStreamHandler? handler);
[<Android.Runtime.Register(".ctor", "(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/net/URLStreamHandler;)V", "")>]
new Java.Net.URL : string * string * int * string * Java.Net.URLStreamHandler -> Java.Net.URL
参数
- protocol
- String
要使用的协议的名称。
- host
- String
主机的名称。
- port
- Int32
主机上的端口号。
- file
- String
主机上的文件
- handler
- URLStreamHandler
URL 的流处理程序。
- 属性
例外
如果所有参数的组合不表示有效的 URL 或协议无效,则为 。
注解
URL从指定protocol对象、hostport数字file和handler对象创建对象。 指定多个port-1指示 URL 应使用协议的默认端口。 指定一个handlernull指示 URL 应使用协议的默认流处理程序,如以下所述:java.net.URL#URL(java.lang.String, java.lang.String, int, java.lang.String)
如果处理程序不为 null 且存在安全管理器,则使用NetPermission("specifyStreamHandler")权限调用安全管理器checkPermission的方法。 这可能会导致 SecurityException。
此构造函数不对输入执行任何验证。
本页的某些部分是根据 创建和共享的工作进行的修改,并根据 许可证中所述的条款使用。