Bedeutung von% 04X in C und wie man das selbe in Java schreibt

8

In dem Java-Projekt, an dem ich gerade arbeite, wurde ein Teil des Projekts zuvor von jemand anderem in C geschrieben und jetzt muss ich dasselbe in Java schreiben.

Es gibt eine Anweisung in C-Code zum Drucken in eine Datei:

%Vor%

Erstens bin ich mir nicht sicher über die Bedeutung von %04X . Ich denke, es bedeutet, dass, wenn image[i] die Länge fünf oder mehr hat, nur die äußersten vier Zeichen gedruckt werden. Um das gleiche in Java zu tun, habe ich darüber nachgedacht, den Wert mit and operation

zu maskieren %Vor%

Kann mir bitte jemand die richtige Bedeutung von %04X sagen und wie kann ich dasselbe in Java machen? Danke.

    
Rog Matthews 28.03.2012, 06:35
quelle

3 Antworten

9

Der Wert wird als hexadezimale Ganzzahl mit vier Ziffern und führenden Nullen formatiert. Java verwendet die gleiche Formatzeichenfolgensyntax. Sie finden es im javaDoc von Formatter .

Auszug:

%Vor%

Eine verwandte Funktionen sind

%Vor%

(*) - Schreiben Sie es in die PrintStream System.out , die normalerweise die Konsole ist, aber in eine Datei oder etwas anderes umgeleitet werden kann

    
Andreas_D 28.03.2012, 06:40
quelle
6

Lässt den Formatcode "%04X" in seine separaten Teile zerlegen:

  • X bedeutet, dass eine Ganzzahl in hexadezimaler, großer X für große hexadezimale Buchstaben
  • gedruckt wird
  • 4 bedeutet, dass die Zahl linksbündig mit mindestens vier Ziffern gedruckt wird, Druckbereiche mit weniger als vier Ziffern
  • 0 bedeutet, dass wenn weniger als vier Ziffern vorhanden sind führende Nullen gedruckt werden.
Some programmer dude 28.03.2012 06:41
quelle
1

Das X in% 04X bedeutet hexadezimal, mit ABCDEF anstelle von abcdef, und das 04 bedeutet, dass es bei mindestens vier Ziffern gedruckt wird, wobei führende Nullen aufgefüllt werden. Es wird bei Bedarf mehr Ziffern verwenden.

    
Thomas Padron-McCarthy 28.03.2012 06:41
quelle

Tags und Links