URL 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
类 URL 表示统一资源定位符,它是指向万维网上的“资源”的指针。
[Android.Runtime.Register("java/net/URL", DoNotGenerateAcw=true)]
public sealed class URL : Java.Lang.Object, IDisposable, Java.Interop.IJavaPeerable, Java.IO.ISerializable
[<Android.Runtime.Register("java/net/URL", DoNotGenerateAcw=true)>]
type URL = class
inherit Object
interface ISerializable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- 继承
- 属性
- 实现
注解
类 URL 表示统一资源定位符,它是指向万维网上的“资源”的指针。 资源可以像文件或目录一样简单,也可以是对更复杂的对象的引用,例如对数据库或搜索引擎的查询。 有关 URL 类型及其格式的详细信息,请参阅: URL 类型http://web.archive.org/web/20051219043731/http://archive.ncsa.uiuc.edu/SDG/Software/Mosaic/Demo/url-primer.html
一般情况下,URL 可以分为多个部分。 请考虑以下示例: <blockquote>
http://www.example.com/docs/resource1.html
</blockquote>
上述 URL 指示要使用的协议是 http (超文本传输协议),并且信息驻留在名为 www.example.com的主机上。 该主机上的信息已命名 /docs/resource1.html。 主机上此名称的确切含义既依赖于协议,又依赖于主机。 信息通常驻留在文件中,但它可以动态生成。 URL 的此组件称为 路径 组件。
URL 可以选择指定“端口”,这是在远程主机上建立 TCP 连接的端口号。 如果未指定端口,则改用协议的默认端口。 例如,默认端口为 http80. 可将备用端口指定为: <blockquote>
http://www.example.com:1080/docs/resource1.html
</blockquote>
RFC 定义的语法 URL ; 2396:统一资源标识符(URI):通用语法http://www.ietf.org/rfc/rfc2396.txt,由 RFC 修正;2732:URLhttp://www.ietf.org/rfc/rfc2732.txt 中文本 IPv6 地址的格式。 文本 IPv6 地址格式还支持scope_ids。 此处介绍了scope_ids的语法和用法。
URL 可能已将其追加到“片段”,也称为“ref”或“reference”。 片段由尖锐的符号字符“#”指示,后跟更多字符。 例如, <blockquote>
http://java.sun.com/index.html#chapter1
</blockquote>
此片段在技术上不是 URL 的一部分。 相反,它指示在检索指定资源后,应用程序特别感兴趣的文档的该部分附加了标记 chapter1 。 标记的含义特定于资源。
应用程序还可以指定一个“相对 URL”,该 URL 仅包含足够的信息来访问相对于另一个 URL 的资源。 相对 URL 经常在 HTML 页面中使用。 例如,如果 URL 的内容: <blockquote>
http://java.sun.com/index.html
</blockquote> 包含在相对 URL 中: <blockquote>
FAQ.html
</blockquote> 它是一个简写: <blockquote>
http://java.sun.com/FAQ.html
</blockquote>
相对 URL 不需要指定 URL 的所有组件。 如果缺少协议、主机名或端口号,则该值将从完全指定的 URL 继承。 必须指定文件组件。 不继承可选片段。
URL 类本身不会根据RFC2396中定义的转义机制对任何 URL 组件进行编码或解码。 调用方负责对调用 URL 之前需要转义的任何字段进行编码,以及解码从 URL 返回的任何转义字段。 此外,由于 URL 不知道 URL 转义,因此它无法识别同一 URL 的编码或解码形式之间的等效性。 例如,两个 URL:<br>
http://foo.com/hello world/ and http://foo.com/hello%20world
将被视为不等于彼此。
请注意, java.net.URI 该类在某些情况下会执行其组件字段的转义。 管理 URL 的编码和解码的建议方法是使用 java.net.URI,并在这两个类之间使用 #toURI() 和 URI#toURL()转换。
URLEncoder还可以使用和URLDecoder类,但仅用于 HTML 表单编码,这与RFC2396中定义的编码方案不同。
在 JDK1.0 中添加。
本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。
构造函数
| 名称 | 说明 |
|---|---|
| URL(String, String, Int32, String, URLStreamHandler) |
|
| URL(String, String, Int32, String) |
|
| URL(String, String, String) |
从指定 |
| URL(String) |
从 |
| URL(URL, String, URLStreamHandler) |
通过使用指定上下文中的指定处理程序分析给定规范来创建 URL。 |
| URL(URL, String) |
通过分析指定上下文中的给定规范来创建 URL。 |
属性
| 名称 | 说明 |
|---|---|
| Authority |
获取此 |
| Class |
返回此 |
| Content |
获取此 URL 的内容。 |
| DefaultPort |
获取与此关联的 |
| File |
获取此 |
| Handle |
基础 Android 实例的句柄。 (继承自 Object) |
| Host |
获取此 |
| JniIdentityHashCode |
类 |
| JniPeerMembers |
类 |
| Path |
获取此 |
| PeerReference |
类 |
| Port |
获取此 |
| Protocol |
获取此 |
| Query |
获取此 |
| Ref |
获取此 |
| ThresholdClass |
此 API 支持 Mono for Android 基础结构,不打算直接从代码使用。 (继承自 Object) |
| ThresholdType |
此 API 支持 Mono for Android 基础结构,不打算直接从代码使用。 (继承自 Object) |
| UserInfo |
获取此 |
方法
| 名称 | 说明 |
|---|---|
| Clone() |
创建并返回此对象的副本。 (继承自 Object) |
| Dispose() |
类 |
| Dispose(Boolean) |
类 |
| Equals(Object) |
指示其他对象是否“等于”此对象。 (继承自 Object) |
| GetContent(Class[]) |
获取此 URL 的内容。 |
| GetHashCode() |
返回对象的哈希代码值。 (继承自 Object) |
| JavaFinalize() |
当垃圾回收确定不再引用该对象时,由对象上的垃圾回收器调用。 (继承自 Object) |
| Notify() |
唤醒正在等待此对象的监视器的单个线程。 (继承自 Object) |
| NotifyAll() |
唤醒正在等待此对象的监视器的所有线程。 (继承自 Object) |
| OpenConnection() |
返回一个 |
| OpenConnection(Proxy) |
同样 |
| OpenStream() |
打开与此 |
| SameFile(URL) |
比较两个 URL,不包括片段组件。 |
| SetHandle(IntPtr, JniHandleOwnership) |
设置 Handle 属性。 (继承自 Object) |
| SetURLStreamHandlerFactory(IURLStreamHandlerFactory) |
设置应用程序的 |
| ToArray<T>() |
类 |
| ToExternalForm() |
构造此 |
| ToString() |
返回对象的字符串表示形式。 (继承自 Object) |
| ToURI() |
返回 |
| UnregisterFromRuntime() |
类 |
| Wait() |
使当前线程等待,直到唤醒它,通常是通过 em 通知/em< 或 >em<interrupted>/em<。><> (继承自 Object) |
| Wait(Int64, Int32) |
使当前线程等待直到唤醒,通常是通过 <em>通知</em> 或 <em interrupted>/em<>,或直到经过一定数量的实时。 (继承自 Object) |
| Wait(Int64) |
使当前线程等待直到唤醒,通常是通过 <em>通知</em> 或 <em interrupted>/em<>,或直到经过一定数量的实时。 (继承自 Object) |
显式接口实现
| 名称 | 说明 |
|---|---|
| IJavaPeerable.Disposed() |
类 |
| IJavaPeerable.DisposeUnlessReferenced() |
类 |
| IJavaPeerable.Finalized() |
类 |
| IJavaPeerable.JniManagedPeerState |
类 |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
类 |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
类 |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
类 |
扩展方法
| 名称 | 说明 |
|---|---|
| GetJniTypeName(IJavaPeerable) |
获取实例 |
| JavaAs<TResult>(IJavaPeerable) |
尝试强制 |
| JavaCast<TResult>(IJavaObject) |
执行 Android 运行时检查的类型转换。 |
| JavaCast<TResult>(IJavaObject) |
类 |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
尝试强制 |