kostenloser Webspace werbefrei: lima-city


Java - Byte -> String

lima-cityForumProgrammiersprachenJava

  1. Autor dieses Themas

    toolz

    Kostenloser Webspace von toolz

    toolz hat kostenlosen Webspace.

    String test = "Test";
    Byte b = test.getBytes();


    Wie bekomme ich jetzt aus den Byte 'b' wieder einen String?
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. i******m

    also b wird in dem Fall zu einem Array, wenn die mich auf meinem letzten Praktikum nicht belogen haben.
    also würde ich im Falle von Test iwie es so machen, dass du System.out.println(b[1...4]); ausgibst, ich glaube so müsste es gehen, also wenn du es umwandeln willst dann so ungefär:

    String a = ""+b[1]+b[2]+b[3]+b[4];

    Also ich bin auch erst weit am anfang des lernens, aber so müsste es meiner ansicht nach funktionieren.
    Besser eine halbe als keine Antwort, richtig?? XD
  4. Autor dieses Themas

    toolz

    Kostenloser Webspace von toolz

    toolz hat kostenlosen Webspace.

    Hab
    System.out.println...
    auch probiert, das klappt nicht.
    Aber es funktioniert anscheinend folgendes:
    String fertig = new String(b)


    Beitrag zuletzt geändert: 15.2.2009 15:33:17 von toolz
  5. Man kann ja auch mal in der Doko schauen. ;)

    getBytes gibt ein Array zurück.

    toolz schrieb: Hab
    System.out.println...
    auch probiert, das klappt nicht.
    Aber es funktioniert anscheinend folgendes:
    String fertig = new String(b)


    Auch das steht in der Doko: http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html#String(byte[])

    P.S. eine Array wird bei System.out.println immer verschachtelt dagestellt.
    So dass man erkennt wie es aufgebaut ist.

    Jens

    Beitrag zuletzt geändert: 15.2.2009 16:16:39 von jacr
  6. Hi,

    der formal richtige Weg, um einen primitiven Wertetyp in einen String zu konvertieren ist folgender (mit Beispielen):
    String s = String.valueOf(true); // true
    s = String.valueOf((byte)0x12); // 18
    s = String.valueOf((byte)0xFF); // -1
    s = String.valueOf('a'); // a
    s = String.valueOf((short)123); // 123
    s = String.valueOf(123); // 123
    s = String.valueOf(123L); // 123
    s = String.valueOf(1.23F); // 1.23
    s = String.valueOf(1.23D); // 1.23


    über eine for - loop (länge des Arrays ) kannst Du den über einen StringBuffer die Methode append anwwenden, somit wird byte an das ende des StringBuffers angehängt. Zum Schluss wandelt man den StringBuffer mit der .toString()-Methode in einen richtigen String um.

    Beitrag zuletzt geändert: 24.2.2009 1:55:41 von oricon
  7. Hallo,

    Wenn es probleme mit dateien in dem zusammenhang gibt, musst du noch den zeichensatz angeben.

    z.B.
    String str = new String(deinbytearray, "UTF-8");


    Doku-Leser Wissen mehr! :biggrin:

    Gruß Tillorgias
  8. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!