Voglio leggere le stringhe UTF-8 da un server di cui ho il controllo, utilizzando Java MIDP. Il mio server sta inviando dati UTF-8. Il seguente codice si avvicina:Lettura di stringhe UTF8 da un server tramite http utilizzando MIDP
c = (StreamConnection) Connector.open(
myServer, Connector.READ_WRITE);
InputStream is = c.openInputStream();
StringBuffer sb = new StringBuffer();
int ch;
while((ch = is.read()) != -1)
sb.append((char)ch + "->" + ch + "\n");
ho stampare il carattere e il suo codice per il debug. Penso che stia leggendo i caratteri ASCII qui, quindi, quando ho un carattere che ha il suo codice sopra 127, ottengo due caratteri, come i due esempi seguenti:
lettera á. Codice UTF E1 (esadecimale). Ottengo 195 e poi 161
lettera ô. Codice UTF F4 (hex). Ottengo 195 e poi 180
La mia domanda è, c'è un modo per me di leggere direttamente i caratteri UTF. Ho trovato alcune soluzioni nel web ma nessuna si adatta al MIDP.
semplicemente perfetto. Grazie! –
Grazie per l'ottima risposta che ha aiutato molto. Un piccolo commento, su questa riga: 'Reader r = InputStreamReader (c.openInputStream()," UTF-8 ");', Funziona solo per me se lo uso in questo modo: 'Reader r = new InputStreamReader (c .openInputStream(), "UTF-8"); 'Grazie ancora !!!! –