Ich rufe einen Rest WS auf, der XML zurückgibt. Einige Elemente haben Zeichenketten enthalten Sonderzeichen wie áãç etc ... Wenn ich die Informationen über den Browser erhalten, wird alles richtig angezeigt, aber wenn ich es von Android aus aufrufen, bekomme ich nicht die richtigen Sonderzeichen.UTF8 Codierung in Android beim Aufruf von REST-Webservice
Beachten Sie die ‚decodiert‘ und ‚codiert‘ Variablen:
wenn ich URLDecoder.decode(result, "UTF-8")
Das Ergebnis bleibt gleich
verwenden, wenn ich URLEncoder.encode(result, "UTF-8")
ändert sich das Ergebnis zu verwenden, was würde es (voll zu erwarten von% 's Symbolen und numerischen darstellenden Symbolen und Sonderzeichen).
Hier ist die Methode, um die Webservice zu nennen:
public void updateDatabaseFromWebservice(){
// get data from webservice
Log.i(TAG, "Obtaining categories from webservice");
HttpClient client = new DefaultHttpClient();
HttpGet request = new HttpGet(ConnectionProperties.CATEGORIES_URI);
ResponseHandler<String> handler = new BasicResponseHandler();
String result = "";
String decoded;
String encoded;
try {
result = client.execute(request, handler);
decoded = URLDecoder.decode(result, "UTF-8");
encoded = URLEncoder.encode(result, "UTF-8");
String c = "AS";
} catch (Exception e) {
Log.e(TAG, "An error occurred while obtaining categories", e);
}
client.getConnectionManager().shutdown();
}
Jede mögliche Hilfe
für mich gearbeitet, danke! – baekacaek