簡體   English   中英

Android JSON 解析使用 Web 服務查看古吉拉特語字符

[英]Android JSON Parsing View Gujarati Character Using Web Service

在 Android JSON 解析中使用 Web 服務查看古吉拉特語字符

我得到了古吉拉特語單詞,就像我包含的圖像中的單詞一樣。 如果古吉拉特語單詞顯示為અપૂર્વ,則它顯示為圖像中的第一個圓圈。

請幫我找到解決這個問題的辦法

像這樣獲取古吉拉特語單詞的圖像如下所示:

在此處輸入圖像描述

這是我的代碼:

public class GetProductData extends AsyncTask<String, String, JSONObject> {

    //private ProgressDialog p_dialog;
    JSONArray jArray;

    @Override
    protected void onPreExecute() {
        // TODO Auto-generated method stub
        super.onPreExecute();
        /*p_dialog = new ProgressDialog(con);
        p_dialog.setMessage("Please Wait ...");
        p_dialog.setIndeterminate(false);
        p_dialog.setCancelable(false);
        p_dialog.show();*/
    }

    @Override
    protected JSONObject doInBackground(String... params) {
        jArray = JSONParser.GetProductData();

        Log.d("TAG", "JSON ARRAY FOR DEVICE ID : " + jArray);
        String msg = "Nothing Happened...";
        try {
            if (jArray != null) {
                Key = jArray.getJSONObject(0).getString("Key").toString();

                if (Key.equals("1")) {
                    db.deleteAllProductDetails();


                    for (int i = 1; i < jArray.length(); i++) {

                        Log.d("ADADADADTAG","CategoryName ::: "+jArray.getJSONObject(i).getString("CategoryName"));
                        Log.d("ADADADADTAG","SubCategoryName ::: "+jArray.getJSONObject(i).getString("SubCategoryName").trim());
                        Log.d("ADADADADTAG","ProductName ::: "+jArray.getJSONObject(i).getString("ProductName"));

                        db.insertProductDetails(
                                jArray.getJSONObject(i).getString("ProductId").trim(),
                                jArray.getJSONObject(i).getString("CategoryId").trim(),
                                jArray.getJSONObject(i).getString("CategoryName").trim(),
                                jArray.getJSONObject(i).getString("CategoryImageUrl").trim(),
                                jArray.getJSONObject(i).getString("SubCategoryId").trim(),
                                jArray.getJSONObject(i).getString("SubCategoryName").trim(),
                                jArray.getJSONObject(i).getString("SubCategoryImageUrl").trim(),
                                jArray.getJSONObject(i).getString("ProductName").trim(),
                                jArray.getJSONObject(i).getString("ProductImageUrl").trim(),
                                jArray.getJSONObject(i).getString("ProductCode").trim(),
                                jArray.getJSONObject(i).getString("ProductPrice").trim(),
                                jArray.getJSONObject(i).getString("ProductUnit").trim(),
                                jArray.getJSONObject(i).getString("ProductSmallDesc").trim(),
                                jArray.getJSONObject(i).getString("CategoryStatus").trim(),
                                jArray.getJSONObject(i).getString("SubCategoryStatus").trim(),
                                jArray.getJSONObject(i).getString("ProductStatus").trim()

                        );

                    }

                }

            } else {
            }
        } catch (Exception e) {
            // TODO: handle exception
            Log.e("TAG", "Warn :" + e.getLocalizedMessage());
            Log.e("TAG", "Warn :" + e.getMessage());
        }
        return null;
    }

    @Override
    protected void onPostExecute(JSONObject json) {
        // TODO Auto-generated method stub
        super.onPostExecute(json);
       // p_dialog.dismiss();

        if (jArray != null) {
            if (Key.equals("1")) {
                Cursor cGetAllProductDetails = db.getAllProductDetails();
                //Toast.makeText(con,"Count ::: "+cGetAllProductDetails.getCount(),Toast.LENGTH_LONG).show();
                preferences = con.getSharedPreferences(IsLogin,Context.MODE_PRIVATE);
                if(preferences.getBoolean(IsLogin,false))
                {
                    Intent i = new Intent(con, DashboardActivityEnglishWithLogin.class);
                    startActivity(i);
                    overridePendingTransition(R.anim.left_in, R.anim.left_out);
                    finish();
                }
                else
                {
                    Intent i = new Intent(con, DashboardActivityEnglishWithoutLogin.class);
                    startActivity(i);
                    overridePendingTransition(R.anim.left_in, R.anim.left_out);
                    finish();
                }
            } else if (Key.equals("0")) {

            } else {

            }
        }

    }

}


public static JSONArray GetProductData() {
    // TODO Auto-generated method stub
    try
    {
        init();

        url = SITE_URL + "GetProductData";
        Log.d("TAG", url);

        httpPost = new HttpPost(url.toString());
        Log.d("TAG", "HTTP POST"+httpPost);
        pairs = new ArrayList<NameValuePair>();

        httpPost.setEntity(new UrlEncodedFormEntity(pairs, HTTP.UTF_8));
        Log.d("TAG", "HTTP POST"+httpPost);
        httpResponse = httpClient.execute(httpPost);
        Log.d("TAG", "HTTP RESPONSE"+httpResponse);
        httpEntity = httpResponse.getEntity();
        inputStream = httpEntity.getContent();

        /* Convert response to string */
        result = getResult(inputStream);
        Log.d("TAG","RESULT : "+ result);
        jsonArray = new JSONArray(result);
        Log.d("TAG", "JSON ARRAY : "+ jsonArray);

    } catch (ClientProtocolException e) {
        Log.e("TAG", "Error in Client Protocol : " + e.toString());
    } catch (JSONException e) {
        Log.e("TAG", "Error Parsing data " + e.toString());
    } catch (Exception e) {
        Log.e("TAG", "Error in HTTP Connection : " + e.toString());
    }
    return jsonArray;
}

使用 URLDecoder 解析 Json 數據,

URLDecoder.decode(jArray.getJSONObject(i).getString("CategoryName"), "utf-8");

試試這個

StringRequest stringRequest = new StringRequest(Request.Method.GET,"http://floming.com/shayri/guj_romanse.json", new Response.Listener<String>() {
    @Override
    public void onResponse(String response) {
        String str = "";
        try {
            str = new String(response.getBytes("ISO-8859-1"), "UTF-8");
        } catch (UnsupportedEncodingException e) {

            e.printStackTrace();
        }

        String decodedStr = Html.fromHtml(str).toString();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM