获取维基百科页面的内容到Android

时间:2014-12-10 10:37:37

标签: java android json wikipedia

我有一个Android应用程序,从维基百科获取有关某些主题的信息,并在Toast中显示信息.. 我使用URL使用API​​请求获取信息: http://en.wikipedia.org/w/api.php?action=query&format=json&list=search&srsearch=chocolate 巧克力是搜索关键字或用户搜索的主题...

我使用JSON在java中获取该信息:

    final String QUERY = "query";
    final String LIST = "search";
    final String TITLE = "title";
    final String SNIPPET = "snippet";

    JSONObject searchJson = new JSONObject(searchJsonStr);
    JSONObject queryObject = searchJson.getJSONObject(QUERY);
    JSONArray searchObject = queryObject.getJSONArray(LIST);
    JSONObject titObject = (JSONObject) searchObject.get(0);

    String title = titObject.getString(TITLE);
    String description = titObject.getString(SNIPPET);

title变量返回值:Chocolate是正确的东西.. 但描述返回:  "对于其他用途,请参阅巧克力(消歧)。巧克力i / \ u02c8t \ u0283 \ u0252k(\ u0259t)是一种典型的甜味,通常是棕色的Theobroma cacao"

我不需要那些标签和课程等等......我只是希望它像这样...... "巧克力是一种典型的甜味,通常是棕色的Theobroma cacao食品制剂"

1 个答案:

答案 0 :(得分:1)

如果你想要解码字符串,只需使用方法解码字符串:

private static String decode(String myString) {
    byte[] utf8Bytes = null;
    String convertedString = null;
    try {
        utf8Bytes = myString.getBytes("UTF8");
        convertedString = new String(utf8Bytes, "UTF8");
        return convertedString;
    } catch (UnsupportedEncodingException e) {
        e.printStackTrace();
        return "";
    }
}

你会看到字符串“Chocolate i /tʃɒk(ə)lət/是典型的甜蜜,通常是棕色的”

UPD: /tʃɒk(ə)lət/ - 是一个单词的转录