String wird abgeschnitten, wenn es zu lange

Ich versuche zu bekommen eine JSON-Antwort vom server und der Antwort-string scheint, wird immer abgeschnitten, wenn die Länge der Zeichenfolge erreicht rund 5525 Zeichen.

HttpClient httpClient = new DefaultHttpClient();
HttpPost post = new HttpPost(URL);
ResponseHandler<String> responseHandler= new BasicResponseHandler();
String testResponse = httpClient.execute(post, responseHandler);

Ich habe auch versucht, dies durch die Verwendung HttpEntity und Lesen des response-Streams. Aber auch das schneidet die Zeichenfolge in etwa diese Länge.

            HttpClient httpClient = new DefaultHttpClient();
            HttpPost post = new HttpPost(URL);
//         HttpGet get = new HttpGet(URL);

            HttpResponse response = null;
            HttpEntity entity = null;
            InputStream inputStream = null;
            BufferedReader reader = null;
            String result = "";
            try {
                response = (HttpResponse)httpClient.execute(post);
                entity = response.getEntity();
                if(entity != null){
                    inputStream = entity.getContent();
                }
                reader = new BufferedReader(new InputStreamReader(inputStream), 8000);
                StringBuffer builder = new StringBuffer("");
                String line = reader.readLine();
                while(line != null){
                    Log.v(tag, "int max::::::::: "+Integer.MAX_VALUE);
                    Log.v(tag, "LINE::::::::: "+line+reader.toString());
                    Log.v(tag, "reader::::::::: "+reader.toString());
                    builder.append(line+"\n");
                    line = reader.readLine();
                }
                inputStream.close();
                result = builder.toString();
            } catch (ClientProtocolException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            } finally{
                if(inputStream != null){
                    try{
                        inputStream.close();
                    }catch(IOException e){
                        e.printStackTrace();
                    }
                }
            }

Bitte lassen Sie mich wissen, wie kann ich dieses problem behandeln.
Ich habe diesen post als Referenz während der Erstellung dieses.
http://senior.ceng.metu.edu.tr/2009/praeda/2009/01/11/a-simple-restful-client-at-android/

Danke.

  • Sind Sie sicher, dass der server derzeit Rückgabe der gesamten Sache? Können Sie so etwas wie code.google.com/p/rest-client schlagen Sie es und sehen Sie sich die volle Antwort.
  • ja, ich bin sicher, dass der server wieder die ganze Sache, getestet habe ich es aus meinem browser und es hat wieder die gesamte json.
  • Obwohl, es ist ziemlich spät, aber kann jemand anderes helfen ich habe diesen code zum anzeigen der komplette code, der sich irgendwo auf derselben Seite int maxLogSize = 1000; for(int i = 0; i <= veryLongString.length() / maxLogSize; i++) { int start = i * maxLogSize;< int end = (i+1) * maxLogSize; end = end > veryLongString.length() ? veryLongString.length() : end; Log.v(TAG, veryLongString.substring(start, end)); }
InformationsquelleAutor achie | 2010-08-26
Schreibe einen Kommentar