tutorials.de Buch-Aktion 05/2012
Like Tree1Danke
  • 1 Beitrag von deepthroat
ERLEDIGT
JA
ANTWORTEN
5
ZUGRIFFE
1637
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    riseX riseX ist offline Mitglied Silber
    Registriert seit
    Mar 2007
    Beiträge
    63
    Hallo,

    ich habe in der Datenhaltung ein Byte Array. Ich erstelle beim Serialisieren meines Projekts eine XML Datei und muss mir darin den Zustand des byte Arrays speichern. Mit new String(myByteArray[], "utf-8") oder sowas bekomme ich nur Hieroglyphen - das String.getBytes() funktioniert da genauso wenig ... hat jemand eine andere Idee?

    Danke schonmal im Voraus.

    Lieben Gruß
    riseX
     

  2. #2
    deepthroat deepthroat ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Jun 2005
    Beiträge
    8.168
    Hi.
    Zitat Zitat von riseX Beitrag anzeigen
    ich habe in der Datenhaltung ein Byte Array. Ich erstelle beim Serialisieren meines Projekts eine XML Datei
    Wie und mit welcher Kodierung?
    Zitat Zitat von riseX Beitrag anzeigen
    muss mir darin den Zustand des byte Arrays speichern. Mit new String(myByteArray[], "utf-8") oder sowas bekomme ich nur Hieroglyphen - das String.getBytes() funktioniert da genauso wenig ... hat jemand eine andere Idee?
    Was steht denn in dem Byte-Array drin? In welcher Kodierung?

    Manche Zeichen dürfen in einem XML Dokument nicht verwendet werden. Siehe http://www.w3.org/TR/REC-xml/#charsets

    Hinzu kommt das spezielle Zeichen in PCDATA Sektionen kodiert werden müssen (&, <, >).

    Gruß
     
    If at first you don't succeed, try again. Then quit. No use being a damn fool about it.

  3. #3
    riseX riseX ist offline Mitglied Silber
    Registriert seit
    Mar 2007
    Beiträge
    63
    Hi,

    erstmal danke für die Antwort

    Du hast schon recht ... ich kann das nicht so ohne weiteres speichern. Das encoding ist iso-8859-1. Ich habs aber nun als Einzeiler quick und dirty gelöst.

    Code :
    1
    
    BigInteger biiig = new BigInteger(myByteArray[]);

    und

    Code :
    1
    
    byte [] myByteArray = biiig.toByteArray();

    gibt mir den gleichen Wert wieder zurück ...

    Abgespeichert wird das halt nun als riesen Zahl ... aber es funktioniert zumindest erstmal ...

    Ist doch OK so, oder?

    Gruß
    riseX
     

  4. #4
    deepthroat deepthroat ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Jun 2005
    Beiträge
    8.168
    Hi.

    So richtig elegant ist diese Methode wohl nicht.

    Du könntest bspw. Base64 verwenden (siehe z.B. http://openbook.galileodesign.de/jav...2d6350160bc930)

    Gruß
    riseX bedankt sich. 
    If at first you don't succeed, try again. Then quit. No use being a damn fool about it.

  5. #5
    riseX riseX ist offline Mitglied Silber
    Registriert seit
    Mar 2007
    Beiträge
    63
    Hm ... das könnte ich mal versuchen ... ich benutze das base64 encoding schon beim XML-RPC Client ...

    cool .. .das versuche ich mal ...

    ... ich melde mich wenn was nicht klappt

    Danke schonmal für Deine Hilfe

    Gruß
    riseX
     

  6. #6
    riseX riseX ist offline Mitglied Silber
    Registriert seit
    Mar 2007
    Beiträge
    63
    Funktioniert super ... so mach ichs ...


    Superdanke nochmal ...
     

Ähnliche Themen

  1. Byte array in einer Datei abspeichern
    Von smokymcdope im Forum Java
    Antworten: 6
    Letzter Beitrag: 05.05.09, 21:15
  2. Antworten: 2
    Letzter Beitrag: 29.01.08, 13:02
  3. byte [] - Array reseten
    Von bladich im Forum Java
    Antworten: 3
    Letzter Beitrag: 24.11.06, 15:58
  4. Byte Array zurechtschneiden
    Von Nikon the Third im Forum .NET Archiv
    Antworten: 3
    Letzter Beitrag: 24.01.05, 18:14
  5. Byte-Array als Bitmap
    Von siscop im Forum .NET Archiv
    Antworten: 3
    Letzter Beitrag: 20.05.04, 11:01

Stichworte