Basheer
Basheer

Reputation: 404

Use arabic text in android

How to get the arabic string in json format and how to display in android application inputStreamReader. I get the json from server side And using the Windows-1256 encodingString to convert the arabic string but sometext not be shown correctly.

HttpClient httpClient = new DefaultHttpClient();
            HttpGet httpGet = new HttpGet(url);
            System.out.println(url + ":::url");
            try {
                HttpResponse httpResponse = httpClient.execute(httpGet);
                InputStream inputStream = httpResponse.getEntity()
                        .getContent();
                InputStreamReader inputStreamReader = new InputStreamReader(
                        inputStream,"windows-1256");
                        //new InputStreamReader(inputStream);
                BufferedReader bufferedReader = new BufferedReader(
                        inputStreamReader,8);
                StringBuilder stringBuilder = new StringBuilder();
                String bufferedStrChunk = null;
                while ((bufferedStrChunk = bufferedReader.readLine()) != null) {
                    stringBuilder.append(bufferedStrChunk);
                }

                return stringBuilder.toString();
            } catch (ClientProtocolException cpe) {
                System.out
                        .println("Exception generates caz of httpResponse :"
                                + cpe);
                cpe.printStackTrace();
            } catch (IOException ioe) {
                System.out
                        .println("Second exception generates caz of httpResponse :"
                                + ioe);

                ioe.printStackTrace();
            }

Upvotes: 1

Views: 701

Answers (1)

Mukesh Parmar
Mukesh Parmar

Reputation: 941

I have been r & d around a day and finally success to parse my arabic json response getting from server using following code.So, may be helpful to you.

 HttpParams params = new BasicHttpParams();
 HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1);
 HttpProtocolParams.setContentCharset(params, "UTF-8");
 params.setBooleanParameter("http.protocol.expect-continue", false);
 HttpClient httpclient = new DefaultHttpClient(params);

 HttpPost httppost = new HttpPost(Your_URL);
 HttpResponse http_response= httpclient.execute(httppost);

 HttpEntity entity = http_response.getEntity();
 String jsonText = EntityUtils.toString(entity, HTTP.UTF_8);

 Log.i("Response", jsonText);

Now, use jsonText for your further requirement.

Thank You

Upvotes: 1

Related Questions