IP Adresse über Tastatur eingeben
Hallo Leute,
Ich möchte eine IP-Adresse über die Tastatur einlesen im Punktformat.
Also z.B. 10.187.35.8
Später möchte ich sie dann Binär darstellen.
Habe aber keine Ahnung wie das gehen soll. Bin über jeden Tipp dankbar.
Ich möchte eine IP-Adresse über die Tastatur einlesen im Punktformat.
Also z.B. 10.187.35.8
Später möchte ich sie dann Binär darstellen.
Habe aber keine Ahnung wie das gehen soll. Bin über jeden Tipp dankbar.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 64295
Url: https://administrator.de/contentid/64295
Ausgedruckt am: 16.11.2024 um 13:11 Uhr
2 Kommentare
Neuester Kommentar
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
import java.util.StringTokenizer;
public class ipadresse {
public static void main(String args) {
String sIP;
StringTokenizer st1;
int iIP;
/ / IP Einlesen
System.out.println("Geben Sie bitte eine IP Adresse ein:");
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
try {
sIP = br.readLine();
System.out.println("Eingegebene IP: " + sIP);
/ / IP an . splitten
st1 = new java.util.StringTokenizer(sIP, ".");
/ / dann jeweils den Teil entsprechend der Position multiplizieren und addieren
iIP = Integer.parseInt(st1.nextToken()) * 256 * 256 * 256;
iIP = iIP + Integer.parseInt(st1.nextToken()) * 256 * 256;
iIP = iIP + Integer.parseInt(st1.nextToken()) * 256;
iIP = iIP + Integer.parseInt(st1.nextToken());
/ / Ausgabe
System.out.println("Eingegebene IP als Zahl " + iIP);
System.out.println("Eingegebene IP als Binärzahl " + Integer.toBinaryString(iIP));
} catch (IOException e) {
e.printStackTrace();
}
}
}
Kurzes Beispiel, Fehler wie falsche Eingaben werden nicht abgefangen oder geprüft.
EDIT: Code war nicht sichtbar, wieso auch immer.
import java.io.InputStreamReader;
import java.io.IOException;
import java.util.StringTokenizer;
public class ipadresse {
public static void main(String args) {
String sIP;
StringTokenizer st1;
int iIP;
/ / IP Einlesen
System.out.println("Geben Sie bitte eine IP Adresse ein:");
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
try {
sIP = br.readLine();
System.out.println("Eingegebene IP: " + sIP);
/ / IP an . splitten
st1 = new java.util.StringTokenizer(sIP, ".");
/ / dann jeweils den Teil entsprechend der Position multiplizieren und addieren
iIP = Integer.parseInt(st1.nextToken()) * 256 * 256 * 256;
iIP = iIP + Integer.parseInt(st1.nextToken()) * 256 * 256;
iIP = iIP + Integer.parseInt(st1.nextToken()) * 256;
iIP = iIP + Integer.parseInt(st1.nextToken());
/ / Ausgabe
System.out.println("Eingegebene IP als Zahl " + iIP);
System.out.println("Eingegebene IP als Binärzahl " + Integer.toBinaryString(iIP));
} catch (IOException e) {
e.printStackTrace();
}
}
}
Kurzes Beispiel, Fehler wie falsche Eingaben werden nicht abgefangen oder geprüft.
EDIT: Code war nicht sichtbar, wieso auch immer.