1

是否可以从服务器检索用泰卢固语编写的文本以用于应用程序。我对 Json 使用了以下格式。它在 avd 的 logcat 中给我一些符号错误。如果不是,那将适合获取此类文本。

{
"contacts": [
    {
            "id": "c200",
            "name": "అశ్విని",
            "email": "అశ్విని@అశ్విని.అశ్విని",
            "address": "అశ్విని",
            "gender" : "అశ్విని",
            "phone": {
                "mobile": "అశ్విని",
                "home": "అశ్విని",
                "office": " రేవతి"
            }
    },
    {
            "id": "c201",
            "name": "అశ్విని ram",
            "email": "అశ్విని@అశ్విని.అశ్విని",
            "address": "అశ్విని",
            "gender" : "అశ్విని",
            "phone": {
                "mobile": "అశ్విని",
                "home": "అశ్విని",
                "office": "అశ్విని"
            }
    }
]
} 

以下是我用来检索数据的代码

public class JSONParser {

static InputStream is = null;
static JSONObject jObj = null;
static String json = "";

// constructor
public JSONParser() {

}

public JSONObject getJSONFromUrl(String url) {

    // Making HTTP request
    try {
        // defaultHttpClient
        DefaultHttpClient httpClient = new DefaultHttpClient();
        HttpPost httpPost = new HttpPost(url);

        HttpResponse httpResponse = httpClient.execute(httpPost);
        HttpEntity httpEntity = httpResponse.getEntity();
        is = httpEntity.getContent();           

    } catch (UnsupportedEncodingException e) {
        e.printStackTrace();
    } catch (ClientProtocolException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }

    try {
        BufferedReader reader = new BufferedReader(new InputStreamReader(is, "iso-8859-1"), 8);
        StringBuilder sb = new StringBuilder();
        String line = null;
        while ((line = reader.readLine()) != null) {
            sb.append(line + "\n");
        }
        is.close();
        json = sb.toString();
    } catch (Exception e) {
        Log.e("Buffer Error", "Error converting result " + e.toString());
    }

    // try parse the string to a JSON object
    try {
        jObj = new JSONObject(json);
    } catch (JSONException e) {
        Log.e("JSON Parser", "Error parsing data " + e.toString());
    }

    // return JSON String
    return jObj;

}
}
4

2 回答 2

1

You need to use NTR.TTF font in the assets folder and should change the line below

BufferedReader reader = new BufferedReader(new InputStreamReader(is, "UTF-8"), 8000);
于 2012-12-18T12:26:10.077 回答
0

JSON 内容使用 UTF-8 作为默认字符集(参见 RFC 4627,第 3 章)。您必须确保服务器返回具有正确编码的响应,并为流阅读器显式使用 UTF-8 编码:

BufferedReader r = new BufferedReader(new InputStreamReader(instream, "UTF-8"), 8000);
于 2012-10-31T12:57:56.383 回答