1. Gewinne jetzt ein UMiDIGI C Note - alle Informationen findest du hier!!
  1. RED-BARON, 19.11.2009 #1
    RED-BARON

    RED-BARON Threadstarter Android-Hilfe.de Mitglied

    Hallo Ihrs,

    ich baue einen String zusammen und möchte den über einen
    Socket versenden. Dafür kopiere ich die Bytes des Strings in
    ein byte-Array und übergebe dieses der Methode "write" des
    OutPutStreams.

    Im Logfile des Servers sieht man: status='VÜ' was abge-
    lehnt wird vom Server. der Orginalstring enthält: status='VÜ'.

    Leider bietet Outputstream keine Methode an die ein char-Array
    entgegen nimmt. Ich denke mal die Runtime konvertiert hier
    was, was so nicht gewünscht ist.

    Gibts dazu Lösungsansätze oder Ideen ? Besten dank, RB
     
  2. swordi, 19.11.2009 #2
    swordi

    swordi Gewerbliches Mitglied

    versuch mal sowas

    new String(deinString, "UTF-8").getBytes();

    du hast probleme mit der codierung
     
  3. RED-BARON, 20.11.2009 #3
    RED-BARON

    RED-BARON Threadstarter Android-Hilfe.de Mitglied

    :D
    öhm, ja.

    Falscher Fehler, an falscher Stelle gefunden.

    ich hatte die Länge falsch mit "length()" ermittelt.
    "getBytes()" liefert UTF-8, was wie ich glaubte für
    den Server doch kein Problem ist. Problem war, dass
    in das Ziel-Array ein Zeichen zu wenig kopiert
    wurde :rolleyes: . Die Länge wird jetzt mit "codePointCount"
    ermittelt und das Ziel-Array ist groß genug und auch
    alle Zeichen werden richtig kopiert.


     
Die Seite wird geladen...
Ähnliche Themen Forum Datum
Uri oder File path als String speichern zum wiederauslesen Android App Entwicklung 26.01.2017
Du betrachtest das Thema "SDK 1.6 : String, getBytes()" im Forum "Android App Entwicklung",