我目前正在开发一个使用.NET 1.1框架的项目,我现在陷入困境.我有一个像" http://www.example.com/mypage/default.aspx " 这样的字符串,或者它可能是" http://www.example.edu/mypage/default.aspx "或" http:// www .example.eu/mypage/default.aspx ".如何从这种字符串中提取基本URl.
谢谢
Adi*_*dil 71
您可以使用URI类来获取主机名.
var uri = new Uri("http://www.example.com/mypage/default.aspx");
var host = uri.Host;
Run Code Online (Sandbox Code Playgroud)
编辑您可以使用uri.Scheme和uri.Port获取.Scheme例如(http,ftp)和.Port以获取端口号,如(8080)
string host = uri.Host;
string scheme = uri.Scheme;
int port = uri.Port;
Run Code Online (Sandbox Code Playgroud)
您可以使用Uri.GetLeftPart获取基本URL.
该GetLeftPart方法返回包含URI字符串的最左侧部分的字符串,由部分所指定的部分结束.
var uri = new Uri("http://www.example.com/mypage/default.aspx");
var baseUri = uri.GetLeftPart(System.UriPartial.Authority);
Run Code Online (Sandbox Code Playgroud)
以下示例显示了URI以及使用Scheme,Authority,Path或Query,MSDN调用GetLeftPart的结果.
Mys*_*ter 51
myUri.GetLeftPart(System.UriPartial.Authority)
Run Code Online (Sandbox Code Playgroud)
假设"基本URI"意味着类似的东西http://www.example.com
,你可以得到这样的基础uri:
var myUri= new Uri("http://www.example.com/mypage/default.aspx");
var baseUri = myUri.GetLeftPart(System.UriPartial.Authority)
Run Code Online (Sandbox Code Playgroud)
这给出了: http://www.example.com
注意:uri.Host
给出:( www.example.com
不包括端口或方案)
var builder = new UriBuilder("http://www.example.com/mypage/default.aspx");
builder.Path = String.Empty;
var baseUri = builder.Uri;
var baseUrl = baseUri.ToString();
// http://www.example.com/
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
31701 次 |
最近记录: |