Android : Sum up data from JSON

on Monday, July 7, 2014


I have some JSON data to sum but I get an error. This is my code:



protected String doInBackground(Object... params)
{
JSONParser jParser = new JSONParser();
JSONObject json = jParser.AmbilJson(link_url);
int Total = 0;
try
{
pesanan = json.getJSONArray("pesanan");
for (int i = 0; i < pesanan.length(); i++)
{
JSONObject ar = pesanan.getJSONObject(i);
Total = ar.getInt("Total");
Jumlah = Jumlah + Total;
}
}
catch (JSONException e)
{
e.printStackTrace();
}
return null;
}

@Override
protected void onPostExecute(String s)
{
super.onPostExecute(s);
Totalbayar.setText(Jumlah);


JSON data:



{"pesanan" : [{"Total" : "20000"}{"Total" : "10000"}{"Total" : "27000"}]}


Logcat:



07-08 08:25:50.447: E/JSON Parser(621): Error parsing data org.json.JSONException: Unterminated array at character 34 of {"pesanan" : [{"Total" : "20000"}{"Total" : "10000"}{"Total" : "27000"}]}

07-08 08:25:50.487: E/AndroidRuntime(621): FATAL EXCEPTION: main
07-08 08:25:50.487: E/AndroidRuntime(621): android.content.res.Resources$NotFoundException: String resource ID #0x0
07-08 08:25:50.487: E/AndroidRuntime(621): at android.content.res.Resources.getText(Resources.java:247)
07-08 08:25:50.487: E/AndroidRuntime(621): at android.widget.TextView.setText(TextView.java:3428)
07-08 08:25:50.487: E/AndroidRuntime(621): at aplikasi.slluberscafe.TungguPesanan$tampil.onPostExecute(TungguPesanan.java:95)
07-08 08:25:50.487: E/AndroidRuntime(621): at aplikasi.slluberscafe.TungguPesanan$tampil.onPostExecute(TungguPesanan.java:1)
07-08 08:25:50.487: E/AndroidRuntime(621): at android.os.AsyncTask.finish(AsyncTask.java:602)
07-08 08:25:50.487: E/AndroidRuntime(621): at android.os.AsyncTask.access$600(AsyncTask.java:156)
07-08 08:25:50.487: E/AndroidRuntime(621): at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:615)
07-08 08:25:50.487: E/AndroidRuntime(621): at android.os.Handler.dispatchMessage(Handler.java:99)
07-08 08:25:50.487: E/AndroidRuntime(621): at android.os.Looper.loop(Looper.java:137)
07-08 08:25:50.487: E/AndroidRuntime(621): at android.app.ActivityThread.main(ActivityThread.java:4340)
07-08 08:25:50.487: E/AndroidRuntime(621): at java.lang.reflect.Method.invokeNative(Native Method)
07-08 08:25:50.487: E/AndroidRuntime(621): at java.lang.reflect.Method.invoke(Method.java:511)
07-08 08:25:50.487: E/AndroidRuntime(621): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
07-08 08:25:50.487: E/AndroidRuntime(621): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
07-08 08:25:50.487: E/AndroidRuntime(621): at dalvik.system.NativeStart.main(Native Method)


I want to sum up the variable Total.


0 comments:

Post a Comment