如何在JAVA中向JARA添加JSON数据

时间:2016-08-20 18:14:21

标签: android arrays json

我有一个项目,我正在尝试将数据从JSON数组转发到普通数组。但我不能这样。如果您知道我在项目中添加了哪些代码和代码,请帮助我。我的主要活动文件在这里

public class MainActivity extends AppCompatActivity {

private TextView tvData;
private String[] stringArray;
protected ActionBarDrawerToggle mDrawerToggle;
private DrawerLayout mDrawerLayout;
private NavigationView mNavigationView;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    tvData = (TextView)findViewById(R.id.bilgi);
    setupToolbar();
    initNavigationDrawer();
    new JSONTask().execute("http://192.168.1.36:8080/urunler/kategori_goster.php");

}

public class JSONTask extends AsyncTask<String,String,String>

{
    @Override
    protected String doInBackground(String... params) {
        HttpURLConnection connection = null;
        BufferedReader reader = null;
        try {
            URL url = new URL(params[0]);
            connection = (HttpURLConnection) url.openConnection();
            connection.connect();
            InputStream stream = connection.getInputStream();
            reader = new BufferedReader(new InputStreamReader(stream));
            StringBuffer buffer = new StringBuffer();
            String line="";
            while((line = reader.readLine()) != null){
                buffer.append(line);
            }
            String finalJson = buffer.toString();
            JSONObject parentObject = new JSONObject(finalJson);
            JSONArray parrentArray = parentObject.getJSONArray("uyelerimiz");
            StringBuffer finalBufferedData = new StringBuffer();
            for(int i=0;i<parrentArray.length(); i++)
            {
                JSONObject finalObject = parrentArray.getJSONObject(i);
                String year = finalObject.getString("kategori_adi");
                finalBufferedData.append(year + " \n");
            }

            return finalBufferedData.toString();

        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        } catch (JSONException e) {
            e.printStackTrace();
        } finally {
            if(connection !=null)
            {
                connection.disconnect();
            }

            try {
                if(reader !=null)
                {
                    reader.close();
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        return null;
    }
    @Override
    protected void onPostExecute(String result) {
        super.onPostExecute(result);

        tvData.setText(result);

    }
}

JSON正在解决任何问题。我想将我的JSON数据添加到我的“private String [] stringArray;”

以下是JSON的格式:

{  
   "uyelerimiz":[  
      {  
         "kategori_adi":"Bilgisayar"
      },
      {  
         "kategori_adi"         ‌​:"Cep Telefonu"
      },
      {  
         "kategori_adi":"Saglik"
      },
      {  
         "kategori_adi":"Kirtas‌​iye"
      }
   ]
}

1 个答案:

答案 0 :(得分:0)

private String[] parseJson(String response){
    try {
        JSONObject lJsonObject = new JSONObject(response);
        JSONArray lJsonArray = lJsonObject.getJSONArray("uyelerimiz");
        String[] lResult = new String[lJsonArray.length()];
        for (int index = 0;index<lJsonArray.length();index++){
            lResult[index] = lJsonArray.getJSONObject(index).getString("kategori_adi");
        }
        return lResult;
    } catch (JSONException e) {
        e.printStackTrace();
    }
    return null;
}