Json via text

Fermé
phone-iddevelopment Messages postés 12 Date d'inscription mardi 30 juillet 2013 Statut Membre Dernière intervention 10 février 2023 - Modifié le 27 avril 2019 à 11:42
BunoCS Messages postés 15476 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 3 mai 2024 - 29 avril 2019 à 09:35
bonjour,

sur une création d'application,j'arrive a récupérer en json des données est l'afficher sur un layout,mais quand j'essaie de refaire sur un autre layout, cela fonctionne pas, voila mon code :

public class MainActivity extends AppCompatActivity {
    TextView textview;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        textview = (TextView) findViewById(R.id.textViewa);
        textView2 = (TextView) findViewById(R.id.textViewb);

        new getData().execute();
    }
    class getData extends AsyncTask<String, String, String> {
      
        HttpURLConnection urlConnection = null;

        @Override
        protected String doInBackground(String... args) {
            StringBuilder result = new StringBuilder();

            try {
                URL url = new URL("http://toto.com/json.php");

                urlConnection = (HttpURLConnection) url.openConnection();
                urlConnection.setRequestMethod("GET");

                urlConnection.setDoOutput(true);

                urlConnection.connect();

                BufferedReader br = new BufferedReader(new InputStreamReader(url.openStream()));

                char[] buffer = new char[1024];

                String line;
                while ((line = br.readLine()) != null) {
                    result.append(line + "\n");
                }
                br.close();

                String jsonString = result.toString();

                System.out.println("JSON: " + jsonString);

            } catch (Exception e) {
                e.printStackTrace();
            } finally {
                urlConnection.disconnect();
            }

            return result.toString();
        }

        @Override
        protected void onPostExecute(String result) {
            try {
                JSONArray jsonArray = new JSONArray(result);
                JSONObject jsonObject = jsonArray.getJSONObject(0);
                String t = jsonObject.getString("toto");
                String u = jsonObject.getString("tata");

                textview.setText(t);
                textView2.setText(u);

            } catch (JSONException e) {
                e.printStackTrace();
            }
        }

    }

}

EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI

Merci d'y penser dans tes prochains messages.
A voir également:

1 réponse

BunoCS Messages postés 15476 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 3 mai 2024 3 895
29 avril 2019 à 09:35
Bonjour,

Qu'est-ce qui ne fonctionne pas ?
0