nach Typenkonvertierung Leerzeichen ersetzen

may24

Bekanntes Mitglied
Hi zusammen,

ich habe da folgendes Problem:

Java:
byte[] myBytes = new byte[] {0xFF, 0xF1, 0x03, 0x20};
String out = "";
for(int i=0; i<4; i++)
{
   out += String.format("0x%2 ", Integer.toHexString(myBytes[i]%0xFF).replace(" ", "0");
}
...

Der "out" String liefert aber nicht das was er soll, sondern: "0xFF xF1 0x 3 0x20"
D.h. er ersetzt das Leerzeichen nicht !
Auch replace("\\s", "0") wird ignoriert ...
 
Der Quellcode und die angebliche Ausgabe sind mehr als fragwürdig ... da ist so ziemlich alles falsch. Ich gehe mal davon aus, dass du Hex-Werte ausgeben möchtest:

Java:
    	  int[] myBytes = new int[] {0xFF, 0xF1, 0x03, 0x20};
    	  for(int i = 0; i < myBytes.length; i++) {
    		  System.out.println(String.format("0x%02X", myBytes[i]%0xFF));
    	  }
 
Zuletzt bearbeitet:
Hey, es gibt diverse Beispiele im Internet mit Integer.toHexString ... :bahnhof:

Ja, das oben funktioniert mit einer kleinen Änderung:

out += String.format("0x%02X", myBytes & 0xFF));

... hatte ich aber auch falsch. Trotzdem Danke :idea:
 

Neue Themen


Zurück
Oben