Je souhaite lire les chaînes UTF-8 à partir d'un serveur dont j'ai le contrôle, en utilisant java MIDP. Mon serveur envoie des données UTF-8. Le code suivant se rapproche:Lecture de chaînes UTF8 à partir d'un serveur via http à l'aide de 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");
j'imprimer le omble chevalier et son code à des fins de débogage. Je pense qu'il lit des caractères ASCII ici, donc, quand j'ai un caractère qui a son code au-dessus de 127, alors je reçois deux caractères, comme les deux exemples suivants:
lettre á. Code UTF E1 (hex). Je reçois 195 puis 161
lettre ô. Code UTF F4 (hex). Je reçois 195 puis 180
Ma question est, est-il un moyen pour moi de lire les caractères UTF directement. J'ai trouvé quelques solutions sur le web mais aucune ne correspond au MIDP.
parfait. Merci! –
Merci pour la bonne réponse, ça m'a beaucoup aidé. Un petit commentaire, sur cette ligne: 'Lecteur r = InputStreamReader (c.openInputStream()," UTF-8 ");', Cela ne marche que si je l'utilise de cette façon: 'Reader r = new InputStreamReader (c .openInputStream(), "UTF-8"); 'Encore merci !!!! –