1

「 」のような URL からアドレス部分 :とポート部分 : 2111http://localhost:2111/を分ける方法は? アドレスとポートhttp://localhost/を分離または構築できるデータ構造はあり ますか?http://localhost:2111/

4

2 に答える 2

2

これを使って:

Uri uri = new Uri("http://localhost:2111/");
string newUri = uri.Scheme + "://" + uri.Host + "/";
Console.WriteLine(newUri);

// Output:
// http://localhost/

反対にするには:

Uri uri = new Uri("http://localhost/");
string newURI = uri.AbsoluteUri + uri.Port;

私にとってuri.Ports80、それがあなたにとってうまくいくかどうかわかりませんが、試してみてください。

于 2013-04-09T07:58:52.827 に答える
1

UriBuilderを使用して、ポート値を -1 または 80 に設定することで、URL からポートを削除できます。

var uriBuilder = new UriBuilder("http://localhost:2111/");
uriBuilder.Port = -1;  // or 80
string newUrl = uriBuilder.Uri.AbsoluteUri;
Console.WriteLine(newUrl);

上記は出力されますhttp://localhost/

それらをまとめて追加したい場合は、UriBuilder を再度使用して、ポートを 2111 に設定します。

var uriBuilder = new UriBuilder("http://localhost/");
uriBuilder.Port = 2111;
string newUrl = uriBuilder.Uri.AbsoluteUri;
Console.WriteLine(newUrl);

上記は出力されますhttp://localhost/2111

于 2013-11-01T22:39:53.193 に答える