[Java] Verschiedene Datentypen als HEX in Speicher schreiben

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von unix, 25. März 2010 .

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 25. März 2010
    Verschiedene Datentypen als HEX in Speicher schreiben

    Hey,

    Ich muss verschiedene Datentypen als Hexadezimal Wert in einen externen Speicher schreiben!

    Schreiben klappt alles wunderbar, nur hab ich Probleme mit dem konventieren der Daten in das HEX Format.!

    xD

    z.B. muss ich das aktuelle Datum speichern, ich krieg vom System ein long (1269523361688), welches ich mit 4 byte abspeichern soll.

    Wie krieg ich aus dem long 1269523361688, 4 bytes in der Form 0xFF 0xFF 0xFF 0xFF, die ich dann abspeichern kann?

    THX ^^
     
  2. 25. März 2010
    AW: Verschiedene Datentypen als HEX in Speicher schreiben

    hier mal mit versucht ? aber mit den 4bytes bin ich mir jez net sicher..

    http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Long.html#toHexString(long)
     
  3. 25. März 2010
    AW: Verschiedene Datentypen als HEX in Speicher schreiben

    ja genau das is ^^

    Also noch mal als Beispiel ein Datumswert ist mit (0x7A 0xCC 0xA8 0x4B) (75168204122) abgespeichert!

    hhmm und Strings brauch ich net, in dem Array wo die Daten gespeichert sind und wo sie auch verändert werden liegt alls als int da, aber halt nur bis 127.!
     
  4. 26. März 2010
    AW: Verschiedene Datentypen als HEX in Speicher schreiben

    thats the way it is

    Code:
     public static void Date() {
     // Aktuelles Datum in 4 Bytes speichern
     long time = System.currentTimeMillis() / 1000;
     System.out.println(Long.toHexString(time));
     // 1269598299
     data[12] = (int) (time & 0x000000FF);
     data[13] = (int) ((time >>> 8) & 0x000000FF);
     data[14] = (int) ((time >>> 16) & 0x000000FF);
     data[15] = (int) ((time >>> 24) & 0x000000FF);
     long magazintime = (data[15] << 24) + (data[14] << 16)
     + (data[13] << 8) + data[12];
    
     System.out.println("Datumshex= " + data[12] + " " + data[13] + " "
     + data[14] + " " + data[15]);
     System.out.println(new Date(magazintime * 1000));
     }
    
    ~closed~
     
  5. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.