.NET Framework 类库: Uri类
提供統(tǒng)一資源標(biāo)識(shí)符 (URI) 的對(duì)象表示形式和對(duì) URI 各部分的輕松訪問(wèn)。
命名空間:System
程序集:System(在 system.dll 中)
2public?class?Uri?:?ISerializable 備注
URI 是 Intranet 或 Internet 上可由應(yīng)用程序使用的資源的一種簡(jiǎn)潔表示形式。Uri 類定義了屬性和方法來(lái)處理 URI,包括分析、比較和組合。Uri 類屬性是只讀的;若要?jiǎng)?chuàng)建可修改的對(duì)象,請(qǐng)使用 UriBuilder 類。
相對(duì) URI(例如“/new/index.htm”)必須相對(duì)于基 URI 展開(kāi),這樣才是絕對(duì)的。提供了 MakeRelative 方法在必要時(shí)將絕對(duì) URI 轉(zhuǎn)換為相對(duì) URI。
如果 URI 字符串是格式良好的 URI 并且包括方案標(biāo)識(shí)符,Uri 構(gòu)造函數(shù)將不會(huì)轉(zhuǎn)義 URI 字符串。
Uri 屬性用轉(zhuǎn)義編碼返回規(guī)范化數(shù)據(jù)表示形式,任何 Unicode 值大于 127 的字符都會(huì)被替換為等效的十六進(jìn)制數(shù)。為使 URI 具有規(guī)范化格式,Uri 構(gòu)造函數(shù)執(zhí)行以下步驟:
- 將 URI 方案轉(zhuǎn)換為小寫(xiě)。
- 將主機(jī)名轉(zhuǎn)換為小寫(xiě)。 如果主機(jī)名為 IPv6 地址,則使用規(guī)范化 IPv6 地址。ScopeId 和其他可選的 IPv6 數(shù)據(jù)將被移除 移除默認(rèn)端口號(hào)和空端口號(hào)。 通過(guò)壓縮 /./、/../、// 等序列(包括轉(zhuǎn)義表示形式),規(guī)范化分層 URI 的路徑。
對(duì)于分層 URI,如果主機(jī)未以正斜杠 (/) 結(jié)尾,則添加一個(gè)正斜杠。
URI 中的任何保留字符都要根據(jù) RFC 2396 進(jìn)行轉(zhuǎn)義。
使用 ToString 方法,可以將 Uri 類的內(nèi)容從轉(zhuǎn)義編碼的 URI 引用轉(zhuǎn)換為可讀的 URI 引用。請(qǐng)注意,在 ToString 方法的輸出中,某些保留字符可能仍會(huì)被轉(zhuǎn)義。這是為了支持利用 ToString 返回的值明確無(wú)誤地重新構(gòu)造 URI。
某些 URI 會(huì)包括一個(gè)片段標(biāo)識(shí)符或一個(gè)查詢,或同時(shí)包含這兩項(xiàng)內(nèi)容。片段標(biāo)識(shí)符是跟在數(shù)字符號(hào) (#) 之后的任意文本(不包括數(shù)字符號(hào)本身);段落文本儲(chǔ)存在 Fragment 屬性中。查詢信息是 URI 中跟在問(wèn)號(hào) (?) 后的任何文本;查詢文本存儲(chǔ)在 Query 屬性中。在 .NET Framework 1.1 版中,如果指定給構(gòu)造函數(shù)的字符串包含未知的方案和“c:\”,則 URI 類會(huì)在冒號(hào)后面插入“//”。例如,URI xyz:c:\abc 會(huì)轉(zhuǎn)換為 xyz://c:/abc。在 .NET Framework 2.0 版中已經(jīng)移除這一行為,示例字符串會(huì)轉(zhuǎn)換為 xyz:c:/abc。
| URI 類支持使用以下格式的 IP 地址:四組表示法的 IPv4 協(xié)議和冒號(hào)分隔的十六進(jìn)制 IPv6 協(xié)議。請(qǐng)記住在 IPv6 地址兩邊括上方括號(hào),如 http://[::1]。 |
C# 1Uri?siteUri?=?new?Uri("http://www.contoso.com/");
2?
3WebRequest?wr?=?WebRequest.Create(siteUri); ?繼承層次結(jié)構(gòu) System.Object
??System.Uri
轉(zhuǎn)載于:https://www.cnblogs.com/Dlonghow/archive/2008/06/30/1232451.html
總結(jié)
以上是生活随笔為你收集整理的.NET Framework 类库: Uri类的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 小乖
- 下一篇: 俱乐部又多了一个MVP