muszę przyciąć daną IPaddress dostać pierwsze 3 części tojak przyciąć ciąg adresu IP, aby uzyskać pierwsze 3 części?
jak: "192.168.1"
"192.168.1.20" ➨
"29.6.60.241" ➨ "29.6.60."
z góry dzięki.
muszę przyciąć daną IPaddress dostać pierwsze 3 części tojak przyciąć ciąg adresu IP, aby uzyskać pierwsze 3 części?
jak: "192.168.1"
"192.168.1.20" ➨
"29.6.60.241" ➨ "29.6.60."
z góry dzięki.
String result = input.substring(0,input.lastIndexOf("."));
dzięki :) Wynik ciągu = input.substring (0, input.lastIndexOf (".")) + "."; –
Korzystanie z String.LastIndexOf(), powinno być łatwe.
EDYTOWANIE
Za pomocą tej metody można znaleźć ostatnie ".". Następnie potrzebujesz podciągu do i (podobno) włączenia tego ".". Coś jak:
string shortened = longIP.Substring(0,longIP.LastIndexOf(".")+1);
Jeśli musi zawierać ".", To czy powinno to być 'lastIndexOf' + 1? –
@ Moo-Juice - masz rację, zaktualizowano –
string ip= "192.168.1.100";
string partial = ip.Substring(0,ip.LastIndexOf("."));
string sHostName = Dns.GetHostName();
IPHostEntry ipE = Dns.GetHostByName(sHostName);
IPAddress[] IpA = ipE.AddressList;
for (int i = 0; i < IpA.Length; i++)
{
if(IpA[i].AddressFamily == AddressFamily.InterNetwork)
{
Console.WriteLine("IP Address {0}: {1} {2} ", i, IpA[i].ToString() , sHostName);
string[] x = IpA[i].ToString().Split('.');
Console.WriteLine("{0}.{1}.{2}.", x[0], x[1], x[2]);
}
}
@ Mr.Disappointment tak, tak, zapomniałem o tym .. Edytowałem odpowiedź –
Wewnętrznie, adresy IP (IPv4 i IPv6) są tylko ciągi bitów. IPv4 pasuje do 32 bitów, a IPv6 pasuje do 64 bitów. Tak więc prawdziwą odpowiedzią na twoje pytanie jest po prostu zamaskowanie bitów, które chcesz nadal używać logicznej operacji ORAZ pozostałych. 0.
W większości sytuacji można określić adres IP razem z maską. Zasadą jest, aby zapytać, czy A jest takie samo jak B, sprawdza bity, dla których bit maski jest prawdziwy.
Prowadzi to do wspólnego zapisu: ludzie piszą adres IP jak 124.51.3/17, aby powiedzieć, że pierwsza część opisuje adres IP (może IPv4), a że/17 oznacza, że pierwsze 17 bitów to te pierwsze rozważyć.
Co z adresami IPv6? –
@ Mr.Disappointment, twój alias poprzedza twoje komentarze: D –