Umwandlung in verschiedene Zahlensysteme

GreenJava

Mitglied
Hallo!

Nun, ich habe schon gesucht und gegooglet, aber nichts passendes gefunden.

Ich möchte gerne eine Zahl in die anderen 3 Zahlensyste umwandeln.
Beispiel: Habe ich
DEZIMAL: x
HEX: x
OCT: x
BINÄR: x

etwas in Dezimal eingegebn, wird Hex, Oct und Binär berechnet.

Nunhabe ich schon vordefinierte Methoden von Java gefunden
Java:
toBinaryString(int i), toHexString(int i), toOctalString(int i)

Aber so richtig funktioniert das nicht...

Ich hab' da was versucht, aber so richtig funktioniert das nicht.

Java:
public class Editor {


	public static void main(String[] args) {
		int i = 20;
		String x = "Test";
		
		System.out.println(Long.toOctalString(Long.parseLong(x)));
		

	}

}

Das hab' ich irgendwo gefunden, was mir aber nicht weiterhilft.

Vielen Dank im Vorraus. 😉
 
Das funktioniert nicht weil du einen String ( "Test" ) in den Typ Long konvertierst und dann versuchst davon die Octaldarstellung zu bekommen.
so zB sollte es klappen:
System.out.println(Long.toBinaryString(5));
 
Das funktioniert nicht weil du einen String ( "Test" ) in den Typ Long konvertierst und dann versuchst davon die Octaldarstellung zu bekommen.
so zB sollte es klappen:
System.out.println(Long.toBinaryString(5));

Hallo,

ja das funktioniert! Ist es aber nun auch möglich, der Übersicht halber, den Binärcode nach 4 Zeichen ein Leerzeichen und am Ende einen "." einzufügen?

Direkt gesagt, ich möchte auch versuchen IP Adressen (z.B.: 192.168.0.0) umzuwandeln (nur Binär).
 
Java:
String ip = "192.168.0.1";

String tmpString = ""; //wird in der Schleife benötigt
for(int i = 0; i < ip.length(); i++) //wir müssen an jeder Stelle der IP einmal "entlang"
{
       if(ip.charAt(i)!='.') //wenn an der Stelle i im Text kein Punkt steht dann:
       {
              tmpString+=ip.charAt(i); // "Buchstabe" i aus ip an tmpString dranhängen
       }
       else //wenn da ein Punkt ist dann Zahl auswerten und tmpString "löschen" um im nächste Zahl zu lesen
       {
            int dezimalZahl = Integer.parseInt(tmpString); //Von String -> int
            System.out.println("\nDezimal: " + dezimalZahl);
            System.out.println("Hex: " + Integer.toHexString(dezimalZahl));
            System.out.println("Oktal: " + Integer.toOctalString(dezimalZahl));
            System.out.println("Binär: " + Integer.toBinaryString(dezimalZahl));
            tmpString="";//tmpString wieder löschen sonst wird oben wieder mehr drangehängt
        }
}
 

Neue Themen


Zurück
Oben