1. Hast Du Lust, bei uns mitzuarbeiten und das AH-Team zu verstärken? Alle Details zu dieser aktuellen Herausforderung findest Du hier.
  1. RED-BARON, 28.10.2009 #1
    RED-BARON

    RED-BARON Threadstarter Android-Hilfe.de Mitglied

    Hallo,

    ich bekomme eine Zeichenfolge welche an der Stelle für ein kleines
    "ü" 3 Bytes enthält ( -17 -65 -68 ) das ist wohl UTF8. Beim decodieren
    nach den Regeln für UTF8 bekomme ich auch 0xFC raus was dem "ü"
    nach Ascii Tabelle entspricht.

    Warum das 3 Bytes sind und nicht nur 2 wie eigentlich notwenig weiß
    ich jetzt nicht.

    In einer Listendarstellung wird aber nur wie im Debugger ein Kästchen
    angezeigt und nicht der Buchstabe.

    wie muss der String konvertiert werden bevor er einem z.B.
    ListAdapter zugeführt wird ?


    Vielen Dank im Voraus.

    // Gelöst:
    ( Tja als Java Newbie weiß ich jetzt den Unterschied zwischen char[] und byte[] :D )
     
    Zuletzt bearbeitet: 24.02.2011
  2. RED-BARON, 24.02.2011 #2
    RED-BARON

    RED-BARON Threadstarter Android-Hilfe.de Mitglied

    :sneaky:

    Nun habe ich das selbe Problem wieder und weiss nicht mehr die Lösung :lol:

    ein PHP Script sendet mir das Zeichen "ä" - mehr nicht.

    Mit nachstehenden Zeilen empfange ich das "ä"


    HttpGet request = new HttpGet(http://localhost/test.php);
    HttpResponse response = client.execute(request);

    InputStream in = response.getEntity().getContent();

    BufferedReader reader = new BufferedReader(new InputStreamReader(in));

    while(dbAdapter != null && null != (line = reader.readLine()))

    {

    dbAdapter.execSQL(line);

    }








    in "line" steht ein [], line.getBytes() gibt ein Array mit 3 Byte zurück

    -17, -65, -67

    das ist definitv mein "ä" :)

    das ganze schreibe ich dann in eine Tabelle. In Line steht also in Echt
    noch ein wenig mehr als nur ein "ä" und hole das über einen ListAdapter
    wieder in eine List und diese zeigt nun nur ein auf der Ecke stehendes
    Viereck mit einem Fragezeichen an :angry:

    Der String aus der SQL Abfrage im "ViewBinder" enthält auch wieder
    diese 3 Bytes


    privateclass DecryptShowViewBinder implements SimpleCursorAdapter.ViewBinder
    {
    @Override
    publicboolean setViewValue(View view, Cursor cursor, int columnIndex)
    {
    String text = cursor.getString(columnIndex);

    ((TextView)view).setText(text);
    returntrue;
    }
    }

    cursor_right = mDBAdapter.query("nwl", new String[] { "_id", "Name"}, null, null, null, null,null);
    adapter_right = new SimpleCursorAdapter(context, android.R.layout.simple_list_item_1, cursor_right,
    new String[] { "Name" }, newint[] { android.R.id.text1 });
    adapter_right.setViewBinder(new DecryptShowViewBinder());
    listview_right.setAdapter(adapter_right);



    Nun habe ich geprüft:

    String s = "ä";
    bytes[] b = s.getBytes();

    hier stehten in b nur 2 Bytes ! Es gibt also definitiv ein Unterschied
    zwischem dem was ich empfange und dem was ich erzeuge - so denn
    Umlaute im Code selbst verwendet werden.

    Kann das Problem jemand von Euch nachvollziehen ? Soll ja Leute
    geben die haben einen Webserver am laufen.

    test.php
    <?
    echo "ä\n";
    ?>


    Besten Dank ! RB


    // Gelöst , mal wieder *g*

    wenn man weiß welches Charset[1] man dem InputStreamReader mit übergeben muss ist es ganz einfach ;)


    String line = "";

    InputStream in = response.getEntity().getContent();
    BufferedReader reader = new BufferedReader(new InputStreamReader(in, "windows-1252")); // ANSI CODE
    while(dbAdapter != null && null != (line = reader.readLine()))
    {
    dbAdapter.execSQL(line);
    }


    ( seit Gutenberg, immer die Quellen mit angeben, gel :))) )






     
    Zuletzt bearbeitet: 25.02.2011
Die Seite wird geladen...
Ähnliche Themen Forum Datum
[OFFEN] Frage zum Einsatz von Qualifiers für die dimens.xml Android App Entwicklung 30.08.2017
[ERLEDIGT] Fragen zur Play Developer Console, wie Steuern etc. Android App Entwicklung 29.08.2017
[ERLEDIGT] Fragen zum Einstieg in APP-Entwicklung Android App Entwicklung 01.08.2017
[ERLEDIGT] Frage zu Datenschutz bei Appveröffentlichung Android App Entwicklung 31.07.2017
[ERLEDIGT] Frage zu den drawable-Ordnern Android App Entwicklung 20.05.2017
[ERLEDIGT] Landscape-Darstellung nach Entsperrung des Geräts Android App Entwicklung 27.03.2017
Und täglich grüßt die Quiz-App Frage (Vorgehensweise zur AppEntwicklung) Android App Entwicklung 15.02.2017
Frage zu Rekursives Ordner kopieren Android App Entwicklung 07.02.2017
Ein paar Fragen zu Permissions... Android App Entwicklung 18.01.2017
QR-Result in EditText darstellen Android App Entwicklung 02.01.2017

Benutzer fanden diese Seite durch die Suche nach:

  1. android umlaute darstellen

Du betrachtest das Thema "Frage zur Darstellung von Sonderzeichen" im Forum "Android App Entwicklung",