私はアンドロイドのアプリケーションに取り組んでいます。私はクライアントにHTTPのURLを送信しており、それらからjsonを取り戻しています。受信したjsonは非常に大きいので、jsonの値をStringに格納することはできません。私は拡大バッファエラーにjsonの解析エラーを解決するには?
を取得していますので、以下の私のコードを添付したString.IにJSON値を解析するために利用可能なあらゆる解決策は...
package ez.com;
import java.io.DataInputStream;
import java.io.IOException;
import java.io.ObjectInputStream.GetField;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import org.json.JSONArray;
import org.json.JSONObject;
import android.app.AlertDialog;
import android.content.Context;
import android.content.Intent;
import android.text.Html;
import android.widget.Toast;
public class apiconnection {
/** Called when the activity is first created. */
public static URL url;
public static URLConnection urlConn;
public static DataInputStream dis;
public String str;
public static int val;
public static void urlconn(String url_val,Context con)
{
String s;
//StringBuilder sb = new StringBuilder();
StringBuffer sb=new StringBuffer();
String jsonval=null;
try
{
String urlval="http://iphone.openmetrics.com/apps/mattson/api.html"+url_val;
System.out.println("url value for connection: " +urlval);
url = new URL(urlval);
urlConn = url.openConnection();
urlConn.setDoInput(true);
urlConn.setUseCaches(false);
dis = new DataInputStream(urlConn.getInputStream());
if(dis.available()==0)
{
Toast.makeText(con, "No Data found Please search another option", Toast.LENGTH_LONG).show();
AlertDialog.Builder ab=new AlertDialog.Builder(con);
ab.setMessage(Html.fromHtml("<b><font color=#ff0000> Network Error Please try Again" +"</font></b>"));
ab.setPositiveButton("ok", null);
ab.show();
}
while ((s = dis.readLine()) != null)
{
sb.append(s);
}
"**jsonval=sb.toString();**" -------------------->This line is error
System.out.println("Json Parsed " +jsonval);
jsonreader.json(sb.toString());
}
catch (MalformedURLException e)
{
throw new IllegalStateException("Malformed URL for : "+ e);
}
catch (IOException e)
{
throw new IllegalStateException("IO Exception for : " + e);
}
}
}
もっと情報が必要ですか?そこからjson文字列を取得しますか?あなたはどうやって渡しますか?どのようなエラーが出ますか?これらの詳細を追加する質問を更新しますか? – Prasham
ブラウザで非常に同じURLを開きます。 **大きさはどれくらいですか?**私は、この問題を起こすことなく多くの長いファイルをダウンロードしました。大きなファイルをモバイルデバイスにダウンロードしてもよろしいですか?あなたは何か小さいものを手に入れることはできませんか –