vb.net 教程 12-7 Uri

版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。

Uri 类 :提供统一资源标识符 (URI) 的对象表示形式和对 URI 各部分的轻松访问。
需要注意的是Uri和Url的区别,网上有很多解释。
Url相当于Uri的一个子类,可以把Url当作Uri用。

主要的属性
AbsolutePath:获取 URI 的绝对路径。 
AbsoluteUri:获取绝对 URI。 
Authority:获取服务器的域名系统 (DNS) 主机名或 IP 地址和端口号。 
DnsSafeHost: 获得可安全用于 DNS 解析的未转义主机名。 
Fragment: 获取转义 URI 片段。 
Host: 获取此实例的主机部分。 
公共属性 由 XNA Framework 提供支持 HostNameType 获取 URI 中指定的主机名的类型。 
IsAbsoluteUri 获取一个值,该值指示 Uri 实例是否为绝对 URI。 
IsDefaultPort: 获取一个值,该值指示 URI 的端口值是否为此方案的默认值。 
IsFile: 获取一个值,该值指示指定的 Uri 是否为文件 URI。 
IsLoopback: 获取一个值,该值指示指定的 Uri 是否引用了本地主机。 
IsUnc: 获取一个值,该值指示指定的 Uri 是否为统一命名约定 (UNC) 路径。 
LocalPath: 获取文件名的本地操作系统表示形式。 
OriginalString: 获取传递给 Uri 构造函数的原始 URI 字符串。 
PathAndQuery: 获取用问号 (?) 分隔的 AbsolutePath 和 Query 属性。 
Port: 获取此 URI 的端口号。 
Query: 获取指定 URI 中包括的任何查询信息。 
Scheme: 获取此 URI 的方案名称。 
Segments: 获取包含构成指定 URI 的路径段的数组。 
UserEscaped: 指示 URI 字符串在创建 Uri 实例之前已被完全转义。 
UserInfo: 获取用户名、密码或其他与指定 URI 关联的特定于用户的信息。 

uri类提供的主要的构造函数:
Uri(String) 用指定 URI 初始化 Uri 类的新实例。 
Uri(Uri, String) 根据指定的基 URI 和相对 URI 字符串,初始化 Uri 类的新实例。 
Uri(Uri, Uri) 根据指定的基 Uri 实例和相对 Uri 实例的组合,初始化 Uri 类的新实例。 

以下代码演示了获得Uri的信息:

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Dim siteUri As New Uri(TextBox2.Text)
        Dim info As String = ""
        With siteUri
            info &= "AbsolutePath:" & .AbsolutePath & ControlChars.CrLf
            info &= "AbsoluteUri:" & .AbsoluteUri & ControlChars.CrLf
            info &= "PathAndQuery:" & .PathAndQuery & ControlChars.CrLf
            info &= "DnsSafeHost:" & .DnsSafeHost & ControlChars.CrLf
            info &= "Fragment:" & .Fragment & ControlChars.CrLf
            info &= "Host:" & .Host & ControlChars.CrLf
            info &= "HostNameType:" & .HostNameType & ControlChars.CrLf
            info &= "IsAbsoluteUri:" & .IsAbsoluteUri & ControlChars.CrLf
            info &= "Port:" & .Port & ControlChars.CrLf
            info &= "LocalPath:" & .LocalPath & ControlChars.CrLf
            info &= "UserInfo:" & .UserInfo & ControlChars.CrLf
            info &= "UserEscaped:" & .UserEscaped & ControlChars.CrLf
            info &= "Authority:" & .Authority & ControlChars.CrLf
            info &= "IsLoopback:" & .IsLoopback & ControlChars.CrLf
            info &= "IsUnc:" & .IsUnc & ControlChars.CrLf
            info &= "IsFile:" & .IsFile & ControlChars.CrLf
            info &= "Scheme:" & .Scheme & ControlChars.CrLf
            Dim segcount As Integer = 0
            For Each seg As String In .Segments
                segcount += 1
                info &= "Segment" & segcount & ":" & seg & ControlChars.CrLf
            Next
        End With
        TextBox1.Text = info
    End Sub

运行结果:

由于.net平台下C#和vb.NET很相似,本文也可以为C#爱好者提供参考。

学习更多vb.net知识,请参看vb.net 教程 目录

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

.Net学习

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值