IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

Java/Android récupérer une date dans un JSON


Sujet :

Android

  1. #1
    Membre à l'essai
    Homme Profil pro
    Développeur Logiciel
    Inscrit en
    Décembre 2015
    Messages
    230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2015
    Messages : 230
    Points : 20
    Points
    20
    Par défaut Java/Android récupérer une date dans un JSON
    Bonjour,

    Comment récupère-t-on une date dans un JSON en Java ?

    Merci d'avance pour vos réponses.

  2. #2
    Membre éclairé

    Homme Profil pro
    Développeur mobile iOS / Android
    Inscrit en
    Décembre 2008
    Messages
    259
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur mobile iOS / Android
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 259
    Points : 690
    Points
    690
    Par défaut
    Bonjour,

    La question est un peu vague, Il existe plusieurs manière : il se peut que la date soit au format timestamp (entier long) dans ce cas tu peux faire exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    long dateTimeStamp = jsonObject.getLong(clef_json_de_la_date);
    Date date = new Date(dateTimeStamp);
    Ou bien c'est au format String dans ce cas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String  dateString = jsonObject.getString(clef_json_de_la_date);
    Puis si tu souhaites l'avoir au format Date il faudra le convertir du String au Date.

    Jettes un oeil sur Joda Time qui te facilitera la manipulation des dates

    Bon courage
    « Il est assez difficile de trouver une erreur dans son code quand on la cherche. C’est encore bien plus dur quand on est convaincu que le code est juste. » - Steve McConnell

    N'oubliez pas de consulter les FAQ Swift, Android
    Tutoriel : Développer une application multilingue sous iOS

  3. #3
    Membre à l'essai
    Homme Profil pro
    Développeur Logiciel
    Inscrit en
    Décembre 2015
    Messages
    230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2015
    Messages : 230
    Points : 20
    Points
    20
    Par défaut
    Bonjour Seelass,

    Merci pour ta réponse et bonne année à toi!

    En vérité j'ai cette API (je l'affiche en pretty_print) qui me retourne une liste de Musee en JSON : https://opendata.paris.fr/api/record...tty_print=true

    Et je dois affiché les données de cette API dans un tableau dans une vue.
    Je te montre mon code.

    J'ai donc une classe musée qui récupère tous mes champs:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
     
    import android.app.ListActivity;
    import android.os.Parcel;
    import android.os.Parcelable;
    import android.widget.AdapterView;
     
    import java.text.SimpleDateFormat;
    import java.util.ArrayList;
    import java.util.Date;
     
     
    public class Musee implements Parcelable {
     
        //@Test
        //public ArrayList<Musee> musees = new ArrayList<Musee>();
     
        private String datasetid;
        private String recordid;
        private String fields;
        private String periode_ouverture;
        private String nom_du_musee;
        private String adr;
        private String ville;
        private String nomreg;
        private String ferme;
        private double coordonnees_[];
        private int cp;
        private String nomdep;
        private String type;
        private double coordinates[];
        private Date record_timestamp;
     
     
        //On appel le constructeur de notre class dans le main pour afficher la liste des musées?
        //Mes constructeurs
     
        public Musee(String datasetid, String recordid, String fields, String periode_ouverture, String nom_du_musee, String adr, String ville, String nomreg, String ferme, double coordonnees_[], int cp, String nomdep, String type, double coordinates[], Date record_timestamp) {
            this.datasetid = datasetid;
            this.recordid = recordid;
            this.fields = fields;
            this.periode_ouverture = periode_ouverture;
            this.nom_du_musee = nom_du_musee;
            this.adr = adr;
            this.ville = ville;
            this.nomreg = nomreg;
            this.ferme = ferme;
            this.coordonnees_ = coordonnees_;
            this.cp = cp;
            this.nomdep = nomdep;
            this.type = type;
            this.coordinates = coordinates;
            this.record_timestamp = record_timestamp;
        }
     
        //Surcharge du constructeur Musee
     
        public Musee(Parcel in) {
            this.datasetid = datasetid;
            this.recordid = recordid;
            this.fields = fields;
            this.periode_ouverture = periode_ouverture;
            this.nom_du_musee = nom_du_musee;
            this.adr = adr;
            this.ville = ville;
            this.nomreg = nomreg;
            this.ferme = ferme;
            this.coordonnees_ = coordonnees_;
            this.cp = cp;
            this.nomdep = nomdep;
            this.type = type;
            this.coordinates = coordinates;
            this.record_timestamp = record_timestamp;
        }
     
        public static final Creator<Musee> CREATOR = new Creator<Musee>() {
            @Override
            public Musee createFromParcel(Parcel in) {
                return new Musee(in);
            }
     
            @Override
            public Musee[] newArray(int size) {
                return new Musee[size];
            }
        };
     
        //On appel la methode getMusee() pour récupérer les musées que nous renvoie l'api JSON
        //Mes accesseurs getter + setter
        public String getDataSetid() {
            return this.datasetid;
        }
     
        public String getRecordid() {
            return this.recordid;
        }
     
        public String getfields() {
            return this.fields;
        }
     
        public String getPeriode_ouverture() {
            return this.periode_ouverture;
        }
     
        public String getNom_du_musee() {
            return this.nom_du_musee;
        }
     
        public String getAdresse() {
            return this.adr = adr;
        }
     
        public String getVille() {
            return this.ville = ville;
        }
     
        public String getNomReg() {
            return this.nomreg = nomreg;
        }
     
        public String getFermer() {
            return this.ferme = ferme;
        }
     
        public double[] getCoordonnees() {
            return this.coordonnees_ = coordonnees_; //erreur ici
        }
     
        public int getCP() {
            return this.cp = cp;
        }
     
        public String getNomDep() {
            return this.nomdep = nomdep;
        }
     
        public String getType() {
            return this.type = type;
        }
     
        public double[] getCoordinates() {
            return this.coordinates = coordinates; //erreur ici
        }
     
        public Date getTime() {
            return this.record_timestamp;
        }
     
        public void setDataSetid(String datasetid) {
            this.datasetid = datasetid;
        }
     
        public void setRecordid(String recordid) {
            this.recordid = recordid;
        }
     
        public void setFields(String fields) {
            this.fields = fields;
        }
     
        public void setPeriode_ouverture(String periode_ouverture) {
            this.periode_ouverture = periode_ouverture;
        }
     
        public void setNom_du_musee(String nom_du_musee) {
            this.nom_du_musee = nom_du_musee;
        }
     
        public void setAdresse(String adr) {
            this.adr = adr;
        }
     
        public void setVille(String ville) {
            this.ville = ville;
        }
     
        public void setReg(String nomreg) {
            this.nomreg = nomreg;
        }
     
        public void setFerme(String ferme) {
            this.ferme = ferme;
        }
     
        public void setCoordonnes(double coordonnees_[]) {
            this.coordonnees_ = coordonnees_;
        }
     
        public void setCP(int cp) {
            this.cp = cp;
        }
     
        public void setCP(String nomdep) {
            this.nomdep = nomdep;
        }
     
        public void setType(String type) {
            this.type = type;
        }
     
        public void setCoordinates(double coordinates[]) {
            this.coordinates = coordinates;
        }
     
        public void setTime(Date record_timestamp) {
            this.record_timestamp = record_timestamp;
        }
     
        @Override
        public int describeContents() { return 0; }
     
        @Override
        public void writeToParcel(Parcel dest, int flags) {
            dest.writeString(this.datasetid);
            dest.writeString(this.recordid);
            dest.writeString(this.fields);
            dest.writeString(this.periode_ouverture);
            dest.writeString(this.nom_du_musee);
            dest.writeString(this.adr = adr);
            dest.writeString(this.ville = ville);
            dest.writeString(this.nomreg = nomreg);
            dest.writeString(this.ferme = ferme);
            dest.writeFloat(this.coordonnees_ = coordonnees_[]); //erreur ici
            dest.writeInt(this.cp = cp);
            dest.writeString(this.nomdep = nomdep);
            dest.writeString(this.type = type);
            dest.writeFloat(this.coordinates = coordinates[]); //erreur ici
            dest.writeString(String.valueOf(this.type = type));
        }
     
        @SuppressWarnings("rawtypes")
        private static final class CreatorImplementation implements Parcelable.Creator {
            public Musee createFromParcel(Parcel in) {
                return new Musee(in);
            }
     
            @Override
            public Object[] newArray(int size) {
                // TODO Auto-generated method stub
                return null;
            }
        }
     
    }
    Une class MuseeAdapter pour faire passer mes données une fois parser, vers ma vue:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
     
    import android.content.Context;
    import android.view.LayoutInflater;
    import android.view.View;
    import android.view.ViewGroup;
    import android.widget.ArrayAdapter;
    import android.widget.TextView;
     
    public class MuseeAdapter extends ArrayAdapter<Musee> {
     
        private int myItemLayout;
        private LayoutInflater li;
     
        public MuseeAdapter(Context context, int resourceId) {
            super(context, resourceId);
            this.myItemLayout = resourceId;
            this.li = LayoutInflater.from(context);
        }
     
        @Override
        public View getView(int position, View convertView, ViewGroup parent) {
     
            View view = convertView;
     
            if (view == null)
            {
                view = this.li.inflate(this.myItemLayout, null);
            }
     
            Musee f = this.getItem(position);
            if(f != null)
            {
     
                TextView tv0 = (TextView)view.findViewById(R.id.datasetid);
                tv0.setText(String.valueOf(f.getDataSetid()));
     
                TextView tv1 = (TextView)view.findViewById(R.id.recordid);
                tv1.setText(String.valueOf(f.getRecordid()));
     
                TextView tv2 = (TextView)view.findViewById(R.id.fields);
                tv2.setText(String.valueOf(f.getfields()));
     
                TextView tv3 = (TextView)view.findViewById(R.id.periode_ouverture);
                tv3.setText(String.valueOf(f.getPeriode_ouverture()));
     
                TextView tv4 = (TextView)view.findViewById(R.id.nom_du_musee);
                tv4.setText(String.valueOf(f.getNom_du_musee()));
     
                TextView tv5 = (TextView)view.findViewById(R.id.adresse);
                tv5.setText(String.valueOf(f.getAdresse()));
     
                TextView tv6 = (TextView)view.findViewById(R.id.ville);
                tv6.setText(String.valueOf(f.getVille()));
     
                TextView tv7 = (TextView)view.findViewById(R.id.nomreg);
                tv7.setText(String.valueOf(f.getNomReg()));
     
                TextView tv8 = (TextView)view.findViewById(R.id.fermer);
                tv8.setText(String.valueOf(f.getFermer()));
     
                TextView tv9 = (TextView)view.findViewById(R.id.coordonnees);
                tv8.setText(String.valueOf(f.getCoordonnees()));
     
                TextView tv10 = (TextView)view.findViewById(R.id.cp);
                tv9.setText(String.valueOf(f.getCP()));
     
                TextView tv11 = (TextView)view.findViewById(R.id.nomdepartement);
                tv11.setText(String.valueOf(f.getNomDep()));
     
                TextView tv12 = (TextView)view.findViewById(R.id.type);
                tv12.setText(String.valueOf(f.getType()));
     
                TextView tv13 = (TextView)view.findViewById(R.id.coordinates);
                tv13.setText(String.valueOf(f.getCoordinates()));
     
                TextView tv14 = (TextView)view.findViewById(R.id.record_timestamp);
                tv14.setText(String.valueOf(f.getTime()));
            }
            return view;
        }
     
    }
    Et enfin mon Activity qui se nomme MuseeActivity:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
     
    import android.app.ListActivity;
    import android.app.ProgressDialog;
    import android.os.AsyncTask;
    import android.os.Bundle;
    import android.util.Log;
    import android.view.View;
    import android.widget.AdapterView;
    import android.widget.AdapterView.OnItemClickListener;
    import android.widget.Toast;
     
    import org.json.JSONArray;
    import org.json.JSONObject;
     
    import java.io.BufferedInputStream;
    import java.io.BufferedReader;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.net.HttpURLConnection;
    import java.net.URL;
    import java.text.SimpleDateFormat;
    import java.util.ArrayList;
     
     
    public class MuseeActivity extends ListActivity implements OnItemClickListener {
     
        private static final String BASE_URL = "https://opendata.paris.fr/api/records/1.0/search/?dataset=liste-musees-de-france-a-paris&rows=50";
     
     
        private final class DownloadMusee extends AsyncTask<String, Void, ArrayList<Musee>> {
     
            private HttpURLConnection urlConnection;
            private ProgressDialog progress;
     
            public DownloadMusee() {
                this.progress = new ProgressDialog(MuseeActivity.this);
            }
     
            @Override
            protected void onPreExecute() {
                progress.setTitle("Please wait");
                progress.setMessage("Fetching remote data...");
                progress.setProgressStyle(ProgressDialog.STYLE_SPINNER);
                progress.show();
            }
     
            @Override
            protected ArrayList<Musee> doInBackground(String... params) {
     
                ArrayList<Musee> fetchedData = new ArrayList<Musee>();
                String stream = null;
     
                try {
                    URL url = new URL(params[0]);
                    this.urlConnection = (HttpURLConnection) url.openConnection();
                    InputStream in = new BufferedInputStream(this.urlConnection.getInputStream());
                    BufferedReader r = new BufferedReader(new InputStreamReader(in, "UTF-8"));
                    StringBuilder sb = new StringBuilder();
                    String line;
                    while ((line = r.readLine()) != null) {
                        sb.append(line);
                    }
                    stream = sb.toString();
     
                    SimpleDateFormat record_timestamp = new SimpleDateFormat(Musee.getTime());
     
                    JSONArray concepts = new JSONObject(stream).getJSONArray("records");
                    for (int i = 0; i < concepts.length(); ++i) {
                        JSONObject record = concepts.getJSONObject(i);
                        fetchedData.add(new Musee(
                                record.getString("datasetid"),
                                record.getString("recordid"),
                                record.getString("fields"),
                                record.getString("periode_ouverture"),
                                record.getString("nom_du_musee"),
                                record.getString("adr"),
                                record.getString("ville"),
                                record.getString("nomreg"),
                                record.getString("ferme"),
                                record.getDouble("coordonnees_[]"),
                                record.getInt("cp"),
                                record.getString("nomdep"),
                                record.getString("type"),
                                record.getDouble("coordinates[]"),
                                record.getDate("record_timestamp") //erreur ici
     
                        ));
                    }
                } catch(Exception e) {
                    Log.e("genDROID","An error occured while fetching", e);
                } finally {
                    this.urlConnection.disconnect();
                }
                return fetchedData;
            }
     
            public double getFloat(
                    String key
            ) {};
     
            @Override
            protected void onPostExecute(ArrayList<Musee> result) {
     
                if(progress.isShowing()) progress.dismiss();
                MuseeActivity.this.populate(result);
            }
        }
     
        private MuseeAdapter adapter;
     
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
     
            this.adapter = new MuseeAdapter(this, android.R.layout.simple_list_item_1);
            this.setListAdapter(adapter);
            getListView().setOnItemClickListener(this);
     
        }
     
        @Override
        protected void onStart() {
            super.onStart();
            new DownloadMusee().execute(BASE_URL);
        }
     
        public void populate(ArrayList<Musee> data) {
            this.adapter.clear();
            this.adapter.addAll(data);
            this.adapter.notifyDataSetChanged();
        }
     
        @Override
        public void onItemClick(AdapterView<?> parent, View arg1, int position, long id) {
     
    		/* Uncomment if needed
    		Fruit currentFruit = this.adapter.getItem(position);
    		Intent goToNextScreen = new Intent(this, Elsewhere.class);
    		goToNextScreen.putExtra("selected", currentFruit);
    		this.startActivity(goToNextScreen);
    		*/
            Toast.makeText(this, "You selected item n° " + position, Toast.LENGTH_SHORT).show();
        }
    }
    J'ai actuellement du mal à récupérer le champ "record_timestamp" .
    As-tu une idée ?
    Merci d'avance pour ton aide.

  4. #4
    Membre éclairé

    Homme Profil pro
    Développeur mobile iOS / Android
    Inscrit en
    Décembre 2008
    Messages
    259
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur mobile iOS / Android
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 259
    Points : 690
    Points
    690
    Par défaut
    Si j'ai compris la structure, record_timestamp se trouve dans les objets qui se trouvent dans le noeud records.

    Dans ton code juste essaie de changer cette ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    record.getDate("record_timestamp") //erreur ici
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    record.getString("record_timestamp")
    "record_timestamp": "2016-09-02T13:08:03+00:00" est au format String

    Bonne année également
    « Il est assez difficile de trouver une erreur dans son code quand on la cherche. C’est encore bien plus dur quand on est convaincu que le code est juste. » - Steve McConnell

    N'oubliez pas de consulter les FAQ Swift, Android
    Tutoriel : Développer une application multilingue sous iOS

  5. #5
    Membre à l'essai
    Homme Profil pro
    Développeur Logiciel
    Inscrit en
    Décembre 2015
    Messages
    230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2015
    Messages : 230
    Points : 20
    Points
    20
    Par défaut
    J'ai déjà essayer cette technique, le problème c'est que lorsque je fais ça, dans ma classe Musee, mon
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    public Date getTime() {
            return this.record_timestamp;
        }
    Attends un type "Date" alors qu'il retourne un String.
    J'ai essayé de clean et de rebuild mon projet.

    Et j'ai aussi des erreurs ici que je n'arrive pas à résoudre, il y a des moments je ne comprend pas d'où vient mon problème.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
        public void writeToParcel(Parcel dest, int flags) {
            dest.writeString(this.datasetid);
            dest.writeString(this.recordid);
            dest.writeString(this.fields);
            dest.writeString(this.periode_ouverture);
            dest.writeString(this.nom_du_musee);
            dest.writeString(this.adr = adr);
            dest.writeString(this.ville = ville);
            dest.writeString(this.nomreg = nomreg);
            dest.writeString(this.ferme = ferme);
            dest.writeFloat(this.coordonnees_ = coordonnees_[]); //erreur ici
            dest.writeInt(this.cp = cp);
            dest.writeString(this.nomdep = nomdep);
            dest.writeString(this.type = type);
            dest.writeFloat(this.coordinates = coordinates[]); //erreur ici
            dest.writeString(String.valueOf(this.type = type));
        }
    Pour cette parti le problème viens d'où j'ai mis un tableau [] après mes variables coordonnees_ et coordinates.
    Merci pour ta réponse

  6. #6
    Membre éclairé

    Homme Profil pro
    Développeur mobile iOS / Android
    Inscrit en
    Décembre 2008
    Messages
    259
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur mobile iOS / Android
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 259
    Points : 690
    Points
    690
    Par défaut
    Dans ta classe Musee record_timestamp est de type Date donc il faut que tu convertisse avant ce que tu as récupéré dans le json en Date. Cette question est très similaire à ton cas. Espérant ça va t'aider.
    « Il est assez difficile de trouver une erreur dans son code quand on la cherche. C’est encore bien plus dur quand on est convaincu que le code est juste. » - Steve McConnell

    N'oubliez pas de consulter les FAQ Swift, Android
    Tutoriel : Développer une application multilingue sous iOS

  7. #7
    Membre à l'essai
    Homme Profil pro
    Développeur Logiciel
    Inscrit en
    Décembre 2015
    Messages
    230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2015
    Messages : 230
    Points : 20
    Points
    20
    Par défaut
    J'ai déjà changé le type de mon "record_timestamp" si c'est ce que tu veux dire.
    J'ai regardé le topic sur stackOverflow que tu m'as envoyé, mais je ne vois pas comment ça peut m'aider.

    Je n'ai pas encore réussi à résoudre mes problèmes pour le moment malheureusement.

  8. #8
    Membre éclairé

    Homme Profil pro
    Développeur mobile iOS / Android
    Inscrit en
    Décembre 2008
    Messages
    259
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur mobile iOS / Android
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 259
    Points : 690
    Points
    690
    Par défaut
    Citation Envoyé par eristoff72 Voir le message
    J'ai déjà changé le type de mon "record_timestamp" si c'est ce que tu veux dire.
    J'ai regardé le topic sur stackOverflow que tu m'as envoyé, mais je ne vois pas comment ça peut m'aider.

    Je n'ai pas encore réussi à résoudre mes problèmes pour le moment malheureusement.
    Tu as bien fait la comvertion de String en Date pour record_timestamp ? exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
     
    // Appel de la fonction conversion String en Date
    stringToDate(record.getString("record_timestamp"), le_format_de_la_date_ici);
     
    // Fonction qui converti une String en date avec en paramétre la date en String et le format de la date en String aussi
    // [DEBUT stringToDate]
    public Date stringToDate(String dateInString, String dateFormatString) {
     
    SimpleDateFormat formatter = new SimpleDateFormat(dateFormatString);
     
    try {
     
        Date date = formatter.parse(dateInString);
        return date;
     
     
    } catch (ParseException e) {
        e.printStackTrace();
    }
     
    }
    // [FIN stringToDate]
    « Il est assez difficile de trouver une erreur dans son code quand on la cherche. C’est encore bien plus dur quand on est convaincu que le code est juste. » - Steve McConnell

    N'oubliez pas de consulter les FAQ Swift, Android
    Tutoriel : Développer une application multilingue sous iOS

  9. #9
    Membre à l'essai
    Homme Profil pro
    Développeur Logiciel
    Inscrit en
    Décembre 2015
    Messages
    230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2015
    Messages : 230
    Points : 20
    Points
    20
    Par défaut
    D'accord, ça je le met bien dans mon Activity ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
     
    // Appel de la fonction conversion String en Date
    // [DEBUT stringToDate]
    stringToDate(record.getString("record_timestamp"), le_format_de_la_date_ici);
     
    // Fonction qui converti une String en date avec en paramétre la date en String et le format de la date en String aussi
    public Date stringToDate(String dateInString, String dateFormatString) {
     
    SimpleDateFormat formatter = new SimpleDateFormat(dateFormatString);
     
    try {
     
        Date date = formatter.parse(dateInString);
        return date;
     
     
    } catch (ParseException e) {
        e.printStackTrace();
    }
     
    }
    // [FIN stringToDate]
    J'ai fais ça dans mon MuseeActivity du coup, mais les variables "dateFormatString" et "dateInString" je les déclares dans mon Activity ?
    J'ai ça: http://prntscr.com/dty9r3

    Et voici ma class MuseeActivity complète:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
     
    import android.app.ListActivity;
    import android.app.ProgressDialog;
    import android.os.AsyncTask;
    import android.os.Bundle;
    import android.util.Log;
    import android.view.View;
    import android.widget.AdapterView;
    import android.widget.AdapterView.OnItemClickListener;
    import android.widget.Toast;
     
    import org.json.JSONArray;
    import org.json.JSONObject;
     
    import java.io.BufferedInputStream;
    import java.io.BufferedReader;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.net.HttpURLConnection;
    import java.net.URL;
    import java.text.DateFormat;
    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.ArrayList;
    import java.util.Date;
    import java.util.TimeZone;
     
     
    public class MuseeActivity extends ListActivity implements OnItemClickListener {
     
        private static final String BASE_URL = "https://opendata.paris.fr/api/records/1.0/search/?dataset=liste-musees-de-france-a-paris&rows=50";
        public String dateInString;
        public String dateFormatString;
     
        private final class DownloadMusee extends AsyncTask<String, Void, ArrayList<Musee>> {
     
            private HttpURLConnection urlConnection;
            private ProgressDialog progress;
     
            public DownloadMusee() {
                this.progress = new ProgressDialog(MuseeActivity.this);
            }
     
            @Override
            protected void onPreExecute() {
                progress.setTitle("Please wait");
                progress.setMessage("Fetching remote data...");
                progress.setProgressStyle(ProgressDialog.STYLE_SPINNER);
                progress.show();
            }
     
            @Override
            protected ArrayList<Musee> doInBackground(String... params) {
     
                ArrayList<Musee> fetchedData = new ArrayList<Musee>();
                String stream = null;
     
                try {
                    URL url = new URL(params[0]);
                    this.urlConnection = (HttpURLConnection) url.openConnection();
                    InputStream in = new BufferedInputStream(this.urlConnection.getInputStream());
                    BufferedReader r = new BufferedReader(new InputStreamReader(in, "UTF-8"));
                    StringBuilder sb = new StringBuilder();
                    String line;
                    while ((line = r.readLine()) != null) {
                        sb.append(line);
                    }
                    stream = sb.toString();
     
                    //SimpleDateFormat record_timestamp = new SimpleDateFormat(Musee.getTime());
                    //long dateTimeStamp = jsonObject.getLong("record_timestamp");
     
                    String dateStr = record.getString("record_timestamp"); //record non reconnu chez moi
                    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
                    sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
                    Date museeTime = sdf.parse(dateStr);
     
                    Musee m = new Musee();
                    m.setRecordTimestamp(museeTime); //Je dois recrée un setter ici j'imagine ? Logiquement oui, puisque j'ai un objet de type Musée qui fait appel à une fonction de Musee ?
     
                    stringToDate(record.getString("record_timestamp"), "2016-09-02T13:08:03+00:00");
     
                    // Fonction qui converti une String en date avec en paramétre la date en String et le format de la date en String aussi
                    public Date stringToDate(String dateInString, String dateFormatString) {
     
                        SimpleDateFormat formatter = new SimpleDateFormat(dateFormatString);
     
                        try {
     
                            Date date = formatter.parse(dateInString);
                            return date;
     
     
                        } catch (ParseException e) {
                            e.printStackTrace();
                        }
     
                    }
     
                    JSONArray concepts = new JSONObject(stream).getJSONArray("records");
                    for (int i = 0; i < concepts.length(); ++i) {
                        JSONObject record = concepts.getJSONObject(i);
                        fetchedData.add(new Musee(
                                record.getString("datasetid"),
                                record.getString("recordid"),
                                record.getString("fields"),
                                record.getString("periode_ouverture"),
                                record.getString("nom_du_musee"),
                                record.getString("adr"),
                                record.getString("ville"),
                                record.getString("nomreg"),
                                record.getString("ferme"),
                                record.getDouble("coordonnees_[]"),
                                record.getInt("cp"),
                                record.getString("nomdep"),
                                record.getString("type"),
                                record.getDouble("coordinates[]"),
                                record.getString("record_timestamp") //erreur ici
                        ));
                    }
                } catch(Exception e) {
                    Log.e("genDROID","An error occured while fetching", e);
                } finally {
                    this.urlConnection.disconnect();
                }
                return fetchedData;
            }
     
            public double getFloat(
                    String key
            ) {};
     
            @Override
            protected void onPostExecute(ArrayList<Musee> result) {
     
                if(progress.isShowing()) progress.dismiss();
                MuseeActivity.this.populate(result);
            }
        }
     
        private MuseeAdapter adapter;
     
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
     
            this.adapter = new MuseeAdapter(this, android.R.layout.simple_list_item_1);
            this.setListAdapter(adapter);
            getListView().setOnItemClickListener(this);
     
        }
     
        @Override
        protected void onStart() {
            super.onStart();
            new DownloadMusee().execute(BASE_URL);
        }
     
        public void populate(ArrayList<Musee> data) {
            this.adapter.clear();
            this.adapter.addAll(data);
            this.adapter.notifyDataSetChanged();
        }
     
        @Override
        public void onItemClick(AdapterView<?> parent, View arg1, int position, long id) {
     
    		/* Uncomment if needed
    		Fruit currentFruit = this.adapter.getItem(position);
    		Intent goToNextScreen = new Intent(this, Elsewhere.class);
    		goToNextScreen.putExtra("selected", currentFruit);
    		this.startActivity(goToNextScreen);
    		*/
            Toast.makeText(this, "You selected item n° " + position, Toast.LENGTH_SHORT).show();
        }
    }
    Si je suis bien et comprend bien ce que tu dis ?

  10. #10
    Membre à l'essai
    Homme Profil pro
    Développeur Logiciel
    Inscrit en
    Décembre 2015
    Messages
    230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2015
    Messages : 230
    Points : 20
    Points
    20
    Par défaut
    Je fais un retour, voilà comment j'ai procédé.

    Mon code:

    Ma class Activity:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
     
    import android.app.ListActivity;
    import android.app.ProgressDialog;
    import android.os.AsyncTask;
    import android.os.Bundle;
    import android.util.Log;
    import android.view.View;
    import android.widget.AdapterView;
    import android.widget.AdapterView.OnItemClickListener;
    import android.widget.Toast;
     
    import org.json.JSONArray;
    import org.json.JSONObject;
     
    import java.io.BufferedInputStream;
    import java.io.BufferedReader;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.net.HttpURLConnection;
    import java.net.URL;
    import java.text.DateFormat;
    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.ArrayList;
    import java.util.Date;
    import java.util.TimeZone;
     
     
    public class MuseeActivity extends ListActivity implements OnItemClickListener {
     
        private static final String BASE_URL = "https://opendata.paris.fr/api/records/1.0/search/?dataset=liste-musees-de-france-a-paris&rows=50";
        public String dateInString;
        public String dateFormatString;
     
        private final class DownloadMusee extends AsyncTask<String, Void, ArrayList<Musee>> {
     
            private HttpURLConnection urlConnection;
            private ProgressDialog progress;
     
            public DownloadMusee() {
                this.progress = new ProgressDialog(MuseeActivity.this);
            }
     
            @Override
            protected void onPreExecute() {
                progress.setTitle("Please wait");
                progress.setMessage("Fetching remote data...");
                progress.setProgressStyle(ProgressDialog.STYLE_SPINNER);
                progress.show();
            }
     
            @Override
            protected ArrayList<Musee> doInBackground(String... params) {
     
                ArrayList<Musee> fetchedData = new ArrayList<Musee>();
                String stream = null;
     
                try {
                    URL url = new URL(params[0]);
                    this.urlConnection = (HttpURLConnection) url.openConnection();
                    InputStream in = new BufferedInputStream(this.urlConnection.getInputStream());
                    BufferedReader r = new BufferedReader(new InputStreamReader(in, "UTF-8"));
                    StringBuilder sb = new StringBuilder();
                    String line;
                    while ((line = r.readLine()) != null) {
                        sb.append(line);
                    }
                    stream = sb.toString();
     
                    //SimpleDateFormat record_timestamp = new SimpleDateFormat(Musee.getTime());
                    //long dateTimeStamp = jsonObject.getLong("record_timestamp");
     
     
                    JSONArray concepts = new JSONObject(stream).getJSONArray("records");
                    for (int i = 0; i < concepts.length(); ++i) {
                        JSONObject record = concepts.getJSONObject(i);
                        String dateStr;
                        fetchedData.add(new Musee(
                                record.getString("datasetid"),
                                record.getString("recordid"),
                                record.getString("fields"),
                                record.getString("periode_ouverture"),
                                record.getString("nom_du_musee"),
                                record.getString("adr"),
                                record.getString("ville"),
                                record.getString("nomreg"),
                                record.getString("ferme"),
                                record.getDouble("coordonnees_"),
                                record.getInt("cp"),
                                record.getString("nomdep"),
                                record.getString("type"),
                                record.getDouble("coordinates"),
                                record.getString("record_timestamp"),
                                String dateStr = record.getString("record_timestamp");
                        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
                        sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
                        Date museeTime = sdf.parse(dateStr);
     
                        //on utilise notre class Musee et son constructeur avc ses paramètres
                        Musee m = new Musee();
                        m.setRecordTimestamp(museeTime);
     
                        //puis ici les autres setters
                        fetchedData.add(m); //objet ajouté à l'ArrayList
     
                        JSONArray jsonarray = new JSONArray("records");
                        for (i = 0; i < jsonarray.length(); i++) {
                            JSONObject jsonobject = jsonarray.getJSONObject(i);
                            String coordonnees_ = jsonobject.getString("coordonnees_");
                            String coordinates = jsonobject.getString("coordinates");
                            fetchedData.add(m);
                        }
                        ));
                    }
                } catch(Exception e) {
                    Log.e("genDROID","An error occured while fetching", e);
                } finally {
                    this.urlConnection.disconnect();
                }
                return fetchedData;
            }
     
            public double getFloat(
                    String key
            ) {};
     
            @Override
            protected void onPostExecute(ArrayList<Musee> result) {
     
                if(progress.isShowing()) progress.dismiss();
                MuseeActivity.this.populate(result);
            }
        }
     
        private MuseeAdapter adapter;
     
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
     
            this.adapter = new MuseeAdapter(this, android.R.layout.simple_list_item_1);
            this.setListAdapter(adapter);
            getListView().setOnItemClickListener(this);
     
        }
     
        @Override
        protected void onStart() {
            super.onStart();
            new DownloadMusee().execute(BASE_URL);
        }
     
        public void populate(ArrayList<Musee> data) {
            this.adapter.clear();
            this.adapter.addAll(data);
            this.adapter.notifyDataSetChanged();
        }
     
        @Override
        public void onItemClick(AdapterView<?> parent, View arg1, int position, long id) {
     
    		/* Uncomment if needed
    		Fruit currentFruit = this.adapter.getItem(position);
    		Intent goToNextScreen = new Intent(this, Elsewhere.class);
    		goToNextScreen.putExtra("selected", currentFruit);
    		this.startActivity(goToNextScreen);
    		*/
            Toast.makeText(this, "You selected item n° " + position, Toast.LENGTH_SHORT).show();
        }
    }
    Ma class Musee:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
     
    import android.os.Parcel;
    import android.os.Parcelable;
     
    import java.util.Date;
     
    /**
     * Created by Eric on 26/12/2016.
     */
    public class Musee implements Parcelable {
     
        //@Test
        //public ArrayList<Musee> musees = new ArrayList<Musee>();
     
        private String datasetid;
        private String recordid;
        private String fields;
        private String periode_ouverture;
        private String nom_du_musee;
        private String adr;
        private String ville;
        private String nomreg;
        private String ferme;
        private double coordonnees_[];
        private int cp;
        private String nomdep;
        private String type;
        private double coordinates[];
        private Date record_timestamp;
     
     
        //On appel le constructeur de notre class dans le main pour afficher la liste des musées?
        //Mes constructeurs
     
        public Musee() {
            this.datasetid = datasetid;
            this.recordid = recordid;
            this.fields = fields;
            this.periode_ouverture = periode_ouverture;
            this.nom_du_musee = nom_du_musee;
            this.adr = adr;
            this.ville = ville;
            this.nomreg = nomreg;
            this.ferme = ferme;
            this.coordonnees_ = coordonnees_;
            this.cp = cp;
            this.nomdep = nomdep;
            this.type = type;
            this.coordinates = coordinates;
            this.record_timestamp = record_timestamp;
        }
     
        //Surcharge du constructeur Musee
     
        public Musee(Parcel in) {
            this.datasetid = datasetid;
            this.recordid = recordid;
            this.fields = fields;
            this.periode_ouverture = periode_ouverture;
            this.nom_du_musee = nom_du_musee;
            this.adr = adr;
            this.ville = ville;
            this.nomreg = nomreg;
            this.ferme = ferme;
            this.coordonnees_ = coordonnees_;
            this.cp = cp;
            this.nomdep = nomdep;
            this.type = type;
            this.coordinates = coordinates;
            this.record_timestamp = record_timestamp;
        }
     
        public static final Creator<Musee> CREATOR = new Creator<Musee>() {
            @Override
            public Musee createFromParcel(Parcel in) {
                return new Musee(in);
            }
     
            @Override
            public Musee[] newArray(int size) {
                return new Musee[size];
            }
        };
     
        //On appel la methode getMusee() pour récupérer les musées que nous renvoie l'api JSON
        //Mes accesseurs getter + setter
        public String getDataSetid() {
            return this.datasetid;
        }
     
        public String getRecordid() {
            return this.recordid;
        }
     
        public String getfields() {
            return this.fields;
        }
     
        public String getPeriode_ouverture() {
            return this.periode_ouverture;
        }
     
        public String getNom_du_musee() {
            return this.nom_du_musee;
        }
     
        public String getAdresse() {
            return this.adr = adr;
        }
     
        public String getVille() {
            return this.ville = ville;
        }
     
        public String getNomReg() {
            return this.nomreg = nomreg;
        }
     
        public String getFermer() {
            return this.ferme = ferme;
        }
     
        public double[] getCoordonnees() {
            return this.coordonnees_ = coordonnees_; //erreur ici
        }
     
        public int getCP() {
            return this.cp = cp;
        }
     
        public String getNomDep() {
            return this.nomdep = nomdep;
        }
     
        public String getType() {
            return this.type = type;
        }
     
        public double[] getCoordinates() {
            return this.coordinates = coordinates; //erreur ici
        }
     
        public Date getTime() {
            return this.record_timestamp;
        }
     
        public void setDataSetid(String datasetid) {
            this.datasetid = datasetid;
        }
     
        public void setRecordid(String recordid) {
            this.recordid = recordid;
        }
     
        public void setFields(String fields) {
            this.fields = fields;
        }
     
        public void setPeriode_ouverture(String periode_ouverture) {
            this.periode_ouverture = periode_ouverture;
        }
     
        public void setNom_du_musee(String nom_du_musee) {
            this.nom_du_musee = nom_du_musee;
        }
     
        public void setAdresse(String adr) {
            this.adr = adr;
        }
     
        public void setVille(String ville) {
            this.ville = ville;
        }
     
        public void setReg(String nomreg) {
            this.nomreg = nomreg;
        }
     
        public void setFerme(String ferme) {
            this.ferme = ferme;
        }
     
        public void setCoordonnes(double[] coordonnees_) {
            this.coordonnees_ = coordonnees_;
        }
     
        public void setCP(int cp) {
            this.cp = cp;
        }
     
        public void setCP(String nomdep) {
            this.nomdep = nomdep;
        }
     
        public void setType(String type) {
            this.type = type;
        }
     
        public void setCoordinates(double[] coordinates) {
            this.coordinates = coordinates;
        }
     
        public void setTime(Date record_timestamp) {
            this.record_timestamp = record_timestamp;
        }
     
        @Override
        public int describeContents() { return 0; }
     
        @Override
        public void writeToParcel(Parcel dest, int flags) {
            dest.writeString(this.datasetid);
            dest.writeString(this.recordid);
            dest.writeString(this.fields);
            dest.writeString(this.periode_ouverture);
            dest.writeString(this.nom_du_musee);
            dest.writeString(this.adr = adr);
            dest.writeString(this.ville = ville);
            dest.writeString(this.nomreg = nomreg);
            dest.writeString(this.ferme = ferme);
            dest.writeDoubleArray(this.coordonnees_ = coordonnees_); //erreur ici
            dest.writeInt(this.cp = cp);
            dest.writeString(this.nomdep = nomdep);
            dest.writeString(this.type = type);
            dest.writeDoubleArray(this.coordinates = coordinates); //erreur ici
            dest.writeString(String.valueOf(this.type = type));
        }
     
        public void setRecordTimestamp(Date recordTimestamp) {
            this.record_timestamp = recordTimestamp;
        }
     
        @SuppressWarnings("rawtypes")
        private static final class CreatorImplementation implements Parcelable.Creator {
            public Musee createFromParcel(Parcel in) {
                return new Musee(in);
            }
     
            @Override
            public Object[] newArray(int size) {
                // TODO Auto-generated method stub
                return null;
            }
        }
     
    }
    Je ne sais pas encore si ce qui est fait dans mon code récemment, c'est à dire ça, dans ma class MuseeActivity et bonne ou non:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
     
    JSONArray concepts = new JSONObject(stream).getJSONArray("records");
                    for (int i = 0; i < concepts.length(); ++i) {
                        JSONObject record = concepts.getJSONObject(i);
                        String dateStr;
                        fetchedData.add(new Musee(
                                record.getString("datasetid"),
                                record.getString("recordid"),
                                record.getString("fields"),
                                record.getString("periode_ouverture"),
                                record.getString("nom_du_musee"),
                                record.getString("adr"),
                                record.getString("ville"),
                                record.getString("nomreg"),
                                record.getString("ferme"),
                                record.getDouble("coordonnees_"),
                                record.getInt("cp"),
                                record.getString("nomdep"),
                                record.getString("type"),
                                record.getDouble("coordinates"),
                                record.getString("record_timestamp"),
                                String dateStr = record.getString("record_timestamp");
                        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
                        sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
                        Date museeTime = sdf.parse(dateStr);
     
                        //on utilise notre class Musee et son constructeur avc ses paramètres
                        Musee m = new Musee();
                        m.setRecordTimestamp(museeTime);
     
                        //puis ici les autres setters
                        fetchedData.add(m); //objet ajouté à l'ArrayList
     
                        JSONArray jsonarray = new JSONArray("records");
                        for (i = 0; i < jsonarray.length(); i++) {
                            JSONObject jsonobject = jsonarray.getJSONObject(i);
                            String coordonnees_ = jsonobject.getString("coordonnees_");
                            String coordinates = jsonobject.getString("coordinates");
                            fetchedData.add(m);
                        }
                        ));
                    }
    Ou pour mes deux tableaux dans mon JSON, j'ai essayé de les parser comme ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    JSONArray jsonarray = new JSONArray("records");
                        for (i = 0; i < jsonarray.length(); i++) {
                            JSONObject jsonobject = jsonarray.getJSONObject(i);
                            String coordonnees_ = jsonobject.getString("coordonnees_");
                            String coordinates = jsonobject.getString("coordinates");
                            fetchedData.add(m);
                        }
    Autrement, je cherche pour ce petit soucis:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    String dateStr = record.getString("record_timestamp");
    En capture d'écran sa donne : http://prntscr.com/dua5yd

    Et pour la fermeture de mes parenthèses:
    http://prntscr.com/dua673

    Si tu vois les erreurs, je cherche actuellement la solution.

  11. #11
    Membre éclairé

    Homme Profil pro
    Développeur mobile iOS / Android
    Inscrit en
    Décembre 2008
    Messages
    259
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur mobile iOS / Android
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 259
    Points : 690
    Points
    690
    Par défaut
    Quand tu fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    new Musee(                            record.getString("datasetid"),
                                record.getString("recordid"),
                                record.getString("fields"),
                                record.getString("periode_ouverture"),
                                record.getString("nom_du_musee"),
                                record.getString("adr"),
                                record.getString("ville"),
                                record.getString("nomreg"),
                                record.getString("ferme"),
                                record.getDouble("coordonnees_"),
                                record.getInt("cp"),
                                record.getString("nomdep"),
                                record.getString("type"),
                                record.getDouble("coordinates"),
                                record.getString("record_timestamp"),
                                String dateStr = record.getString("record_timestamp");
                        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
                        sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
                        Date museeTime = sdf.parse(dateStr);
    Tu es entrain de faire appel à ton constructeur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    public Musee() {
            this.datasetid = datasetid;
            this.recordid = recordid;
            this.fields = fields;
            this.periode_ouverture = periode_ouverture;
            this.nom_du_musee = nom_du_musee;
            this.adr = adr;
            this.ville = ville;
            this.nomreg = nomreg;
            this.ferme = ferme;
            this.coordonnees_ = coordonnees_;
            this.cp = cp;
            this.nomdep = nomdep;
            this.type = type;
            this.coordinates = coordinates;
            this.record_timestamp = record_timestamp;
        }
    Ce qui veut dire tu dois respecter chaque type et paramètre que tu vas lui passer. Ors ce n'est pas le cas lorsque tu l'appelles dans
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    new Musee(record.getString("datasetid"),
                                record.getString("recordid"),
                                record.getString("fields"),
                                record.getString("periode_ouverture"),
                                record.getString("nom_du_musee"),
                                record.getString("adr"),
                                record.getString("ville"),
                                record.getString("nomreg"),
                                record.getString("ferme"),
                                record.getDouble("coordonnees_"),
                                record.getInt("cp"),
                                record.getString("nomdep"),
                                record.getString("type"),
                                record.getDouble("coordinates"),
                                record.getString("record_timestamp"),
                                String dateStr = record.getString("record_timestamp");
                        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
                        sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
                        Date museeTime = sdf.parse(dateStr);
    Tu ne peux pas ajout ce bout de code dans ton constructeur ce n'est pas cohérent.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     String dateStr = record.getString("record_timestamp");                    
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
                        sdf.setTimeZone(TimeZone.getTimeZone("GMT"));                     
    Date museeTime = sdf.parse(dateStr);
    Par contre tu peux le mettre dans une méthode et appeler la méthode.
    J'avais fais une méthode dans une de mes précédentes réponses dans laquelle tu lui passes la date en String et le format de la date et il te retourne la date en type Date. Dommage tu n' as pas suivie ma réponse là dessus.
    « Il est assez difficile de trouver une erreur dans son code quand on la cherche. C’est encore bien plus dur quand on est convaincu que le code est juste. » - Steve McConnell

    N'oubliez pas de consulter les FAQ Swift, Android
    Tutoriel : Développer une application multilingue sous iOS

  12. #12
    Expert confirmé
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Points : 4 166
    Points
    4 166
    Par défaut
    Tiens, ta classe Musee a empirée depuis la dernière fois. Maintenant le constructeur est faux puisque tu as enlevé les paramètres :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    public Musee() {
            this.datasetid = datasetid;
            this.recordid = recordid;
            this.fields = fields;
            this.periode_ouverture = periode_ouverture;
            this.nom_du_musee = nom_du_musee;
            this.adr = adr;
            this.ville = ville;
            this.nomreg = nomreg;
            this.ferme = ferme;
            this.coordonnees_ = coordonnees_;
            this.cp = cp;
            this.nomdep = nomdep;
            this.type = type;
            this.coordinates = coordinates;
            this.record_timestamp = record_timestamp;
    }
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  13. #13
    Membre à l'essai
    Homme Profil pro
    Développeur Logiciel
    Inscrit en
    Décembre 2015
    Messages
    230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2015
    Messages : 230
    Points : 20
    Points
    20
    Par défaut
    Ils se sont enlevés tout seuls, je n'y ai même pas touché, ça doit être dû à l'auto complétion.
    C'est remis, merci pour le coup d'oeil.
    Je me demande, ils peuvent vraiment s'enlever comme ça mes paramètres dans mon constructeur ?

  14. #14
    Expert confirmé
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Points : 4 166
    Points
    4 166
    Par défaut
    Pour être tranquille, il te faut 3 constructeurs :
    - un sans paramètres
    - un à 15 paramètres (un pour chaque champs de la classe)
    - un avec une Parcel (correctement généré par genDroid)
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  15. #15
    Membre à l'essai
    Homme Profil pro
    Développeur Logiciel
    Inscrit en
    Décembre 2015
    Messages
    230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2015
    Messages : 230
    Points : 20
    Points
    20
    Par défaut
    Merci pour ta réponse Hephaistos007, ça je sais déjà.
    Il n'y a pas de problème pour ça, sa coule de source.

    Je continue pour les deux tableaux que je dois parser, c'est plus ça le problème pour le moment.
    ma class Musée est correcte, je me demande comment les paramètres que j'avais dans mon constructeur ont pu disparaître.

  16. #16
    Expert confirmé
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Points : 4 166
    Points
    4 166
    Par défaut
    Citation Envoyé par eristoff72 Voir le message
    Merci pour ta réponse Hephaistos007, ça je sais déjà.
    Il n'y a pas de problème pour ça, sa coule de source.

    ma class Musée est correcte, je me demande comment les paramètres que j'avais dans mon constructeur ont pu disparaître.
    Montres-là pour voir.
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  17. #17
    Membre à l'essai
    Homme Profil pro
    Développeur Logiciel
    Inscrit en
    Décembre 2015
    Messages
    230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2015
    Messages : 230
    Points : 20
    Points
    20
    Par défaut
    là voici:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    261
    262
    263
    264
    265
     
    import android.os.Parcel;
    import android.os.Parcelable;
     
    import java.util.Date;
     
    /**
     * Created by Eric on 26/12/2016.
     */
    public class Musee implements Parcelable {
     
        //@Test
        //public ArrayList<Musee> musees = new ArrayList<Musee>();
     
        private String datasetid;
        private String recordid;
        private String fields;
        private String periode_ouverture;
        private String nom_du_musee;
        private String adr;
        private String ville;
        private String nomreg;
        private String ferme;
        private double coordonnees_[];
        private int cp;
        private String nomdep;
        private String type;
        private double coordinates[];
        private Date record_timestamp;
        private double x, y;
     
     
        //On appel le constructeur de notre class dans le main pour afficher la liste des musées?
        //Mes constructeurs
     
        public Musee(String datasetid, String recordid, String fields, String periode_ouverture, String nom_du_musee, String adr, String ville, String nomreg, String ferme, double coordonnees_[], int cp, String nomdep, String type, double coordinates[], Date record_timestamp) {
            this.datasetid = datasetid;
            this.recordid = recordid;
            this.fields = fields;
            this.periode_ouverture = periode_ouverture;
            this.nom_du_musee = nom_du_musee;
            this.adr = adr;
            this.ville = ville;
            this.nomreg = nomreg;
            this.ferme = ferme;
            this.coordonnees_ = coordonnees_;
            this.cp = cp;
            this.nomdep = nomdep;
            this.type = type;
            this.coordinates = coordinates;
            this.record_timestamp = record_timestamp;
        }
     
        //Surcharge du constructeur Musee
     
        public Musee(Parcel in) {
            this.datasetid = datasetid;
            this.recordid = recordid;
            this.fields = fields;
            this.periode_ouverture = periode_ouverture;
            this.nom_du_musee = nom_du_musee;
            this.adr = adr;
            this.ville = ville;
            this.nomreg = nomreg;
            this.ferme = ferme;
            this.coordonnees_ = coordonnees_;
            this.cp = cp;
            this.nomdep = nomdep;
            this.type = type;
            this.coordinates = coordinates;
            this.record_timestamp = record_timestamp;
        }
     
        public void coordinates(double x, double y) {
            this.x = x;
            this.y = y;
        }
     
        public double getX() {
            return this.x;
        }
     
        public double getY() {
            return this.y;
        }
     
        @Override
        public String toString() {
            return "COORD[x=" + x + ", y=" + y + "]";
        }
     
        public static final Creator<Musee> CREATOR = new Creator<Musee>() {
            @Override
            public Musee createFromParcel(Parcel in) {
                return new Musee(in);
            }
     
            @Override
            public Musee[] newArray(int size) {
                return new Musee[size];
            }
        };
     
        //On appel la methode getMusee() pour récupérer les musées que nous renvoie l'api JSON
        //Mes accesseurs getter + setter
        public String getDataSetid() {
            return this.datasetid;
        }
     
        public String getRecordid() {
            return this.recordid;
        }
     
        public String getfields() {
            return this.fields;
        }
     
        public String getPeriode_ouverture() {
            return this.periode_ouverture;
        }
     
        public String getNom_du_musee() {
            return this.nom_du_musee;
        }
     
        public String getAdresse() {
            return this.adr = adr;
        }
     
        public String getVille() {
            return this.ville = ville;
        }
     
        public String getNomReg() {
            return this.nomreg = nomreg;
        }
     
        public String getFermer() {
            return this.ferme = ferme;
        }
     
        public double[] getCoordonnees() {
            return this.coordonnees_ = coordonnees_; //erreur ici
        }
     
        public int getCP() {
            return this.cp = cp;
        }
     
        public String getNomDep() {
            return this.nomdep = nomdep;
        }
     
        public String getType() {
            return this.type = type;
        }
     
        public double[] getCoordinates() {
            return this.coordinates = coordinates; //erreur ici
        }
     
        public Date getTime() {
            return this.record_timestamp;
        }
     
        public void setDataSetid(String datasetid) {
            this.datasetid = datasetid;
        }
     
        public void setRecordid(String recordid) {
            this.recordid = recordid;
        }
     
        public void setFields(String fields) {
            this.fields = fields;
        }
     
        public void setPeriode_ouverture(String periode_ouverture) {
            this.periode_ouverture = periode_ouverture;
        }
     
        public void setNom_du_musee(String nom_du_musee) {
            this.nom_du_musee = nom_du_musee;
        }
     
        public void setAdresse(String adr) {
            this.adr = adr;
        }
     
        public void setVille(String ville) {
            this.ville = ville;
        }
     
        public void setReg(String nomreg) {
            this.nomreg = nomreg;
        }
     
        public void setFerme(String ferme) {
            this.ferme = ferme;
        }
     
        public void setCoordonnes(double[] coordonnees_) {
            this.coordonnees_ = coordonnees_;
        }
     
        public void setCP(int cp) {
            this.cp = cp;
        }
     
        public void setCP(String nomdep) {
            this.nomdep = nomdep;
        }
     
        public void setType(String type) {
            this.type = type;
        }
     
        public void setCoordinates(double[] coordinates) {
            this.coordinates = coordinates;
        }
     
        public void setTime(Date record_timestamp) {
            this.record_timestamp = record_timestamp;
        }
     
        @Override
        public int describeContents() { return 0; }
     
        @Override
        public void writeToParcel(Parcel dest, int flags) {
            dest.writeString(this.datasetid);
            dest.writeString(this.recordid);
            dest.writeString(this.fields);
            dest.writeString(this.periode_ouverture);
            dest.writeString(this.nom_du_musee);
            dest.writeString(this.adr = adr);
            dest.writeString(this.ville = ville);
            dest.writeString(this.nomreg = nomreg);
            dest.writeString(this.ferme = ferme);
            dest.writeDoubleArray(this.coordonnees_ = coordonnees_); //erreur ici
            dest.writeInt(this.cp = cp);
            dest.writeString(this.nomdep = nomdep);
            dest.writeString(this.type = type);
            dest.writeDoubleArray(this.coordinates = coordinates); //erreur ici
            dest.writeString(String.valueOf(this.type = type));
        }
     
        public void setRecordTimestamp(Date recordTimestamp) {
            this.record_timestamp = recordTimestamp;
        }
     
        @SuppressWarnings("rawtypes")
        private static final class CreatorImplementation implements Parcelable.Creator {
            public Musee createFromParcel(Parcel in) {
                return new Musee(in);
            }
     
            @Override
            public Object[] newArray(int size) {
                // TODO Auto-generated method stub
                return null;
            }
        }
     
    }

    Je viens de découvrir le plugin GsonFormat sur Android Studio qui génère tout seul ma class depuis l'API, là voici pour comparer avec celle que j'ai codé:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    261
    262
    263
    264
    265
    266
    267
    268
    269
    270
    271
    272
    273
    274
    275
    276
    277
    278
    279
    280
    281
    282
    283
    284
     
    import java.util.List;
     
     
    public class MuseeJSON {
     
        /**
         * nhits : 1280
         * parameters : {"dataset":["liste-musees-de-france-a-paris"],"timezone":"UTC","rows":50,"format":"json","pretty_print":true}
         * records : [{"datasetid":"liste-musees-de-france-a-paris","recordid":"df4e8d92d3ab3a7f43785986fe9a91a421ad9844","fields":{"periode_ouverture":"Ouvert du 2 mai au 15 juin de 14h à 17h et du 15 juin au 15 septembre de 10h à 12h et de 14h à à 18h du mercredi au lundi, du 15 septembre au 15 octobre de 14h à 17h du mercredi au lundi","nom_du_musee":"Musée de la Chartreuse","adr":"4, Cour des Chartreux","ville":"MOLSHEIM","nomreg":"ALSACE","ferme":"NON","coordonnees_":[48.54278,7.49023],"sitweb":"www.chartreuse-molsheim.info","cp":67120,"nomdep":"BAS-RHIN"},"geometry":{"type":"Point","coordinates":[7.49023,48.54278]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"27f6e26e565fe619627dc7e15249719878da43e2","fields":{"periode_ouverture":"Ouvert le lundi, mercredi au dimanche de 10h à 18h","nom_du_musee":"Musée Tomi Ungerer","adr":"Villa Greiner\n2, avenue de la Marseillaise","ville":"STRASBOURG","nomreg":"ALSACE","ferme":"NON","fermeture_annuelle":"1er janvier, Vendredi Saint, 1er mai, 1er et 11 novembre, 25 décembre","coordonnees_":[48.585556,7.755619],"sitweb":"www.musees-strasbourg.eu","cp":67000,"nomdep":"BAS-RHIN"},"geometry":{"type":"Point","coordinates":[7.755619,48.585556]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"b9014115b948deb7b4157edbdcb0eeb6b6f783ca","fields":{"periode_ouverture":"Ouvert lundi, mercredi au dimanche de 10h à 18h","nom_du_musee":"Musée Alsacien","adr":"23-25, Quai Saint-Nicolas","ville":"STRASBOURG","nomreg":"ALSACE","ferme":"NON","fermeture_annuelle":"1er janvier, vendredi saint, 1er mai, 1er et 11 novembre, 25 décembre","coordonnees_":[48.57862,7.748812],"sitweb":"www.musees-strasbourg.eu","cp":67000,"nomdep":"BAS-RHIN"},"geometry":{"type":"Point","coordinates":[7.748812,48.57862]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"c9a5a4fbd4a582e6b751e61ff77376c7591d91c4","fields":{"periode_ouverture":"Ouvert du 1er avril au 30 septembre de 10h à 19h et du 1er octobre au 31 mars de 14h à 18h (matin sur rdv)","nom_du_musee":"Musée J.F. Oberlin","adr":"25, Montée Oberlin","ville":"WALDERSBACH","nomreg":"ALSACE","ferme":"NON","fermeture_annuelle":"1er janvier, vendredi Saint, dimanche de Pâques, 1er mai, dimanche de Pentecôte, 1er novembre, 24, 25, 31 décembre","coordonnees_":[48.414761,7.214894],"sitweb":"www.musee-oberlin.com","cp":67130,"nomdep":"BAS-RHIN"},"geometry":{"type":"Point","coordinates":[7.214894,48.414761]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"7a19693acd134f4b40e72c07c82d4154dcad0e57","fields":{"annreouv":"15 septembre 2007","periode_ouverture":"Ouvert de début mai au 2 octobre 2011 les vendredis, samedis de 14h à 17h, les dimanches de 14h à 18h\nSur rendez-vous toute l'année pour les groupes de 10 personnes et plus","nom_du_musee":"Musée de la Porte de Thann","adr":"1, Rue de Thann","ville":"CERNAY","nomreg":"ALSACE","sitweb":"http://histoire-cernay.perso.sfr.fr ou www.musees-alsace.org","fermeture_annuelle":"Du 24 décembre au 28 février","coordonnees_":[47.809504,7.174289],"ferme":"NON","cp":68700,"nomdep":"HAUT-RHIN"},"geometry":{"type":"Point","coordinates":[7.174289,47.809504]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"83d89b72400bad59d19f9b0c72bddc5ac474ac19","fields":{"periode_ouverture":"Ouvert le lundi et du mercredi au vendredi de 14h à 18h, les week-ends et jours féris de 10h à 12h et de 14h à 18h","nom_du_musee":"Musée Théodore Deck et des Pays du Florival","adr":"1, Rue du Quatre Février","ville":"GUEBWILLER","nomreg":"ALSACE","ferme":"NON","coordonnees_":[47.905522,7.214504],"sitweb":"www.ville-guebwiller.fr/musee-deck/","cp":68500,"nomdep":"HAUT-RHIN"},"geometry":{"type":"Point","coordinates":[7.214504,47.905522]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"0eac55ea83dd3c9ab2ab8692334e8c332d7e87bc","fields":{"periode_ouverture":"Ouvert du 1er juin au 31 octobre de 10h à 12h et de 14h à 18h, en mai les week-end et jours de fériés","nom_du_musee":"Musée du Vignoble et des Vins d'Alsace","adr":"Château de la Confrérie St-Etienne","ville":"KIENTZHEIM","nomreg":"ALSACE","ferme":"NON","fermeture_annuelle":"Novembre à avril","sitweb":"www.musee-du-vignoble-alsace.fr","cp":68240,"nomdep":"HAUT-RHIN"},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"c5244e567f06cf77ef34a114a173c7b1cad0b2a8","fields":{"periode_ouverture":"Ouvert du mercredi au lundi de 10h à 12h et de 14h à 18h, 18h30 en juillet-août , 19h en décembre","nom_du_musee":"Musée Historique","adr":"4, Rue des Archives","ville":"MULHOUSE","nomreg":"ALSACE","ferme":"NON","fermeture_annuelle":"1er janvier, vendredi saint, lundi de Pâques et de Pentecôte, 1er mai, 14 juillet, 1er et 11 novembre, 25 et 26 décembre","coordonnees_":[47.746535,7.339544],"sitweb":"www.musees-mulhouse.fr/musee-historique/collections.html","cp":68100,"nomdep":"HAUT-RHIN"},"geometry":{"type":"Point","coordinates":[7.339544,47.746535]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"e86d220a5d75a1c34e1d2e30921235ed6c71dd4b","fields":{"periode_ouverture":"Ouvert du mercredi au lundi de 13h à 18h","nom_du_musee":"Musée des Beaux-Arts","adr":"4, Place Guillaume-Tell","ville":"MULHOUSE","nomreg":"ALSACE","ferme":"NON","fermeture_annuelle":"1er janvier, vendredi saint, lundi de Pâques et de Pentecôte, 1er mai, 14 juillet, 1er et 11 novembre, 25 et 26 décembre","coordonnees_":[47.745774,7.338271],"sitweb":"http://www.musees-mulhouse.fr/musee-des-beaux-arts/collections.html","cp":68100,"nomdep":"HAUT-RHIN"},"geometry":{"type":"Point","coordinates":[7.338271,47.745774]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"103d580c8ca94c9676c97a5bdbb9a79b960bfcc2","fields":{"annreouv":"25 mars 2000","periode_ouverture":"Ouvert du 1er au 4 janvier de 10h à 17h du 5 janvier au 5 février de 14h à 17h le week-end de 10h à 17h, du 6 février au 2 avril de 10h à 17h, du 3 avril au 29 octobre de 10h à 17h, du 30 octobre au 31 décembre de 10h à 17h","nom_du_musee":"Musée National de l'Automobile - Collection Schlumpf","adr":"192, Avenue de Colmar\nCS 91096","ville":"MULHOUSE Cedex","nomreg":"ALSACE","sitweb":"www.collection-schlumpf.com","fermeture_annuelle":"25 décembre","coordonnees_":[47.760209,7.327993],"ferme":"NON","cp":68051,"nomdep":"HAUT-RHIN"},"geometry":{"type":"Point","coordinates":[7.327993,47.760209]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"600ed9762810daa003d4e0c8546d1e3c64abb3eb","fields":{"periode_ouverture":"Ouvert du mardi au dimanche de 10h à 18h","nom_du_musee":"Musée EDF Electropolis","adr":"55, rue du Pâturage\nB.P. 52463","ville":"MULHOUSE Cedex","nomreg":"ALSACE","ferme":"NON","fermeture_annuelle":"1er janvier, vendredi saint, 1er mai, 1er et 11 novembre, 25 et 26 décembre","coordonnees_":[47.749441,7.295055],"sitweb":"electropolis.edf.com","cp":68057,"nomdep":"HAUT-RHIN"},"geometry":{"type":"Point","coordinates":[7.295055,47.749441]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"3e3f033d95a81c1d0027115fc0e9d020bea2f284","fields":{"periode_ouverture":"Ouvert du mercredi au lundi du 1er mai au 30 septembre de 10h à 12h et de 14h à 17h","nom_du_musee":"Musée Vauban","adr":"7, Place de la Porte de Belfort","ville":"NEUF-BRISACH","nomreg":"ALSACE","ferme":"NON","coordonnees_":[48.016059,7.525831],"sitweb":"www.neuf-brisach.fr","cp":68600,"nomdep":"HAUT-RHIN"},"geometry":{"type":"Point","coordinates":[7.525831,48.016059]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"fee4f1251d0074da139b44333cbf79eb98257b13","fields":{"periode_ouverture":"Ouvert d'avril à juin et septembre du mardi au vendredi de 9h30 à 17h30, le week-end et jours fériés de 10h à 12h30 et de 14h30 à 18h, en juillet-août tous les jours de 10h à 19h, d'octobre à mars du mardi au vendredi de 9h30 à 12h30 et de 13h30 à 17h, le","nom_du_musee":"Musée Gallo-Romain de Vesunna","adr":"Parc de Vésone\n20, Rue du 26ème Régiment d'Infanterie","ville":"PERIGUEUX","nomreg":"AQUITAINE","ferme":"NON","fermeture_annuelle":"Fermeture les 1er et 2ème semaines de janvier, et les jours fériés d'octobre à mars","coordonnees_":[45.179999,0.71269],"sitweb":"www.vesunna.fr ou http://www.perigueux-vesunna.fr/","cp":24000,"nomdep":"DORDOGNE"},"geometry":{"type":"Point","coordinates":[0.71269,45.179999]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"306a13306a4f424f6369c944d7c25772a335afba","fields":{"periode_ouverture":"Ouvert de janvier à mars de 14h à 18h les mercredis et samedis et d'avril à décembre de 14h à 18h du lundi au samedi","nom_du_musee":"Musée Militaire - Souvenir du Périgord","adr":"32, Rue des Farges","ville":"PERIGUEUX","nomreg":"AQUITAINE","ferme":"NON","fermeture_annuelle":"Jours fériés","coordonnees_":[45.183285,0.720943],"sitweb":"www.museemilitaire-perigord.fr","cp":24000,"nomdep":"DORDOGNE"},"geometry":{"type":"Point","coordinates":[0.720943,45.183285]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"607fe84ebad4da590a412b247708af32834aabb1","fields":{"annreouv":"Non prévue","periode_ouverture":"Ouvert selon les expositions et les périodes","nom_du_musee":"Musée de Sarlat et du Périgord Noir","adr":"B.P. 163","ville":"SARLAT-LA-CANEDA","nomreg":"AQUITAINE","ferme":"OUI","sitweb":"Site des musées aquitains","cp":24205,"nomdep":"DORDOGNE"},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"edaad823482c50b494984db0d858650a5d693625","fields":{"periode_ouverture":"Ouvert du mardi au dimanche de 14h à 18h - (ouvert le 14 juillet et le 15 août)","nom_du_musee":"Centre National Jean Moulin","adr":"Direction des établissements culturels\n48, rue Vital Carles","ville":"BORDEAUX","nomreg":"AQUITAINE","ferme":"NON","fermeture_annuelle":"Certains jours fériés","coordonnees_":[44.838651,-0.577869],"sitweb":"Site de la ville : www.bordeaux.fr","cp":33000,"nomdep":"GIRONDE"},"geometry":{"type":"Point","coordinates":[-0.577869,44.838651]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"d85114c3ce47bcf9ca59e1591013ed51692d34d0","fields":{"periode_ouverture":"Ouvert du mardi, et du mercredi au dimanche de 11h à 18h. Le mercredi  de 11h à 20h","nom_du_musee":"CAPC Musée d'Art Contemporain de Bordeaux","adr":"Entrepôt\n7, Rue Ferrère","ville":"BORDEAUX","nomreg":"AQUITAINE","sitweb":"www.capc-bordeaux.fr ou www.bordeaux.fr","fermeture_annuelle":"Jours fériés sauf 14 juillet et 15 août","coordonnees_":[44.848186,-0.572137],"ferme":"NON","jours_nocturnes":"Mercredi jusqu'à 20h","cp":33000,"nomdep":"GIRONDE"},"geometry":{"type":"Point","coordinates":[-0.572137,44.848186]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"581925283466d4c1973728c88989757130fde514","fields":{"periode_ouverture":"Ouvert du mercredi au lundi de 14h à 18h. Expositions ouvertes de 11h à 18h en semaine et le week-end de 14h à 18h","nom_du_musee":"Musée des Arts Décoratifs","adr":"Hôtel de Lalande\n39, Rue Bouffard","ville":"BORDEAUX","nomreg":"AQUITAINE","ferme":"NON","fermeture_annuelle":"Jours fériés","coordonnees_":[44.838956,-0.579686],"sitweb":"Site de la ville -  www.mairie-bordeaux.fr","cp":33000,"nomdep":"GIRONDE"},"geometry":{"type":"Point","coordinates":[-0.579686,44.838956]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"c0216c13c4500d18890f47145a46464a98ceab09","fields":{"periode_ouverture":"Musée Aquitaine - Le musée Goupil fonctionne uniquement sur exposition temporaire, à raison d\u2019une par an, en général à l\u2019automne.","nom_du_musee":"Musée Goupil","adr":"Conservatoire de l'Image Industrielle\n20 Cours Pasteur","ville":"BORDEAUX","nomreg":"AQUITAINE","ferme":"NON","fermeture_annuelle":"Musée Aquitaine","coordonnees_":[44.835543,-0.575205],"sitweb":"Site de la ville","cp":33000,"nomdep":"GIRONDE"},"geometry":{"type":"Point","coordinates":[-0.575205,44.835543]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"10b15f080fb3ce76461e2c7eb80cb0656d08cd4a","fields":{"annreouv":"Réflexion pour CIAP","ville":"LA REOLE","nom_du_musee":"Musée Municipal","adr":"Esplanade Charles de Gaulle","nomreg":"AQUITAINE","coordonnees_":[44.581128,-0.041074],"ferme":"OUI","cp":33190,"nomdep":"GIRONDE"},"geometry":{"type":"Point","coordinates":[-0.041074,44.581128]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"62b3bd4c43f3f9df35f659ec954ab7866c308248","fields":{"annreouv":"Projet CIAP","ville":"SAINT-EMILION","nom_du_musee":"Musée d'Histoire et d'Archéologique","adr":"Logis Mallet","nomreg":"AQUITAINE","ferme":"OUI","cp":33330,"nomdep":"GIRONDE"},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"0bb4a82fd6ba4ae72a66722532034c2c52604ab2","fields":{"annreouv":"Pas d'info","ville":"VILLANDRAUT","nom_du_musee":"Musée Municipal","adr":"Maison Braneyre Impasse Dupeyron","nomreg":"AQUITAINE","ferme":"OUI","cp":33730,"nomdep":"GIRONDE"},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"ecd8d08e3d2a7e871a4510e9962edf20fa4da410","fields":{"periode_ouverture":"Ouvert dun 1er février au 31 décembre du mardi au dimanche de 14h à 18h et en juillet-août tous les jours de 10h à 19h","nom_du_musee":"Musée Historique de l'Hydravion","adr":"332, Avenue Louis Breguet","ville":"BISCARROSSE","nomreg":"AQUITAINE","ferme":"NON","fermeture_annuelle":"Jours fériés","coordonnees_":[44.388887,-1.182563],"sitweb":"www.hydravions-biscarrosse.com","cp":40600,"nomdep":"LANDES"},"geometry":{"type":"Point","coordinates":[-1.182563,44.388887]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"3fcd55c1abda9772d0c24c4463268fb95aa85702","fields":{"annreouv":"2014","ville":"LUXEY","nom_du_musee":"Atelier-Musée  (Ecomusée de la Grande Landes)","adr":"101, Rue Jacques Desert","nomreg":"AQUITAINE","ferme":"OUI","coordonnees_":[44.26315,-0.518176],"sitweb":"Site du parc - www.parc-landes-de-gascogne.fr","cp":40043,"nomdep":"LANDES"},"geometry":{"type":"Point","coordinates":[-0.518176,44.26315]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"ed75f19530a7d915c8d5bda28a134cd5a0f9951f","fields":{"periode_ouverture":"Ouvert de juillet à septembre de 14h30 à 18h","nom_du_musee":"Musée Municipal","adr":"Rue du Général Lamarque","ville":"SAINT-SEVER","nomreg":"AQUITAINE","ferme":"NON","coordonnees_":[43.758576,-0.572238],"sitweb":"http://www.saint-sever.fr/culture_musee.htm","cp":40500,"nomdep":"LANDES"},"geometry":{"type":"Point","coordinates":[-0.572238,43.758576]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"dadf30dfac7308ba20d75b3c0e746c28d703c80d","fields":{"periode_ouverture":"Ouvert du 1er octobre au 30 avril de 10h à 12h30 et de 13h30 à 18h du mercredi au lundi et de mai à septembre de 10h à 18h","nom_du_musee":"Musée des Beaux-Arts","adr":"Place du Dr Pierre Esquirol","ville":"AGEN Cedex 9","nomreg":"AQUITAINE","ferme":"NON","fermeture_annuelle":"1er mai, 1er novembre, 25 décembre et 1er janvier","coordonnees_":[44.202958,0.615494],"sitweb":"www.agen.fr/musee","cp":47916,"nomdep":"LOT ET GARONNE"},"geometry":{"type":"Point","coordinates":[0.615494,44.202958]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"638fb075ac58c2e401192f56fa87278f9aa46bea","fields":{"periode_ouverture":"Ouvert du 1er avril au 31 mai du mardi au dimanche de 14h à 18h, du 1er juin au 30 septembre du mardi au vendredi de 10h à 12h30 et de 14h à 18h, en octobre du mardi au vendredi de 14h à 18h","nom_du_musee":"Musée du Liège et du Bouchon","adr":"Rue du Puits Saint Côme","ville":"MEZIN","nomreg":"AQUITAINE","ferme":"NON","coordonnees_":[44.056911,0.25639],"sitweb":"www.cg47.fr","cp":47170,"nomdep":"LOT ET GARONNE"},"geometry":{"type":"Point","coordinates":[0.25639,44.056911]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"9463167f8222f2401a0ca05e1f13d81ec8fc8ba0","fields":{"periode_ouverture":"Ouvert d'octobre à mars de 14h à 18h du mardi au jeudi et week-end et d'avril à septembre tous les jours de 10h à 18h","nom_du_musee":"Musée du Château Henri IV","adr":"Rue Henri IV","ville":"NERAC","nomreg":"AQUITAINE","ferme":"NON","fermeture_annuelle":"Janvier, février, 1er week-end de mai et 3ème lundi de septembre","coordonnees_":[44.135138,0.33973],"sitweb":"Site des musées aquitains ou www.nerac.fr","cp":47600,"nomdep":"LOT ET GARONNE"},"geometry":{"type":"Point","coordinates":[0.33973,44.135138]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"f03fae932c394b87e0adc4167a0231e30a28398b","fields":{"periode_ouverture":"Ouvert d'avril à juin et septembre à mi-octobre du mardi au dimanche de 14h à 18h et juillet/août du mardi au samedi de 10h30 à 12h et de 14h à 19h et le dimanche de 14h à 19h","nom_du_musee":"Musée Municipal de Gannat","adr":"Place Rantian","ville":"GANNAT","nomreg":"AUVERGNE","ferme":"NON","coordonnees_":[46.102147,3.19633],"sitweb":"http://www.bassin-gannat.com/","cp":3800,"nomdep":"ALLIER"},"geometry":{"type":"Point","coordinates":[3.19633,46.102147]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"4c8b543c255490d744e6eb654f58613894bec954","fields":{"annreouv":"Non prévue","ville":"IZEURE","nom_du_musee":"Musée Rural de la Sologne Bourbonnaise","adr":"Michel LABONNE\nSecrétaire des Amis du Muséee\n149, Route de Bourgogne","nomreg":"AUVERGNE","coordonnees_":[46.57337,3.359803],"ferme":"OUI","cp":3400,"nomdep":"ALLIER"},"geometry":{"type":"Point","coordinates":[3.359803,46.57337]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"f46cfcb9030a3ed6f03612a89d4723f9fadec962","fields":{"periode_ouverture":"Ouvert d'avril à octobre du mercredi au samedi de 14h30 à 18h","nom_du_musee":"Musée Rieckotter","adr":"Hôtel de Ville\nBoulevard des Arène - B.P. 10","ville":"NERIS-LES-BAINS","nomreg":"AUVERGNE","ferme":"NON","sitweb":"www.ville-neris-les-bains.fr","cp":3310,"nomdep":"ALLIER"},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"3e57601df0e862c22781c3567fed71d1c573518c","fields":{"periode_ouverture":"Ouvert du 2 mai au 30 septembre tous les jours de 10h à 12h et de 14h à 18h, du 1er octobre au 30 avril le lundi et du mercredi au samedi de 10h à 12h et de 14h à 17h","nom_du_musee":"Musée de la Haute Auvergne","adr":"Palais épiscopal\n1, Place d'Armes","ville":"SAINT-FLOUR","nomreg":"AUVERGNE","ferme":"NON","fermeture_annuelle":"1er mai, jours fériés du 01/10 au 30/04","coordonnees_":[45.033137,3.094858],"sitweb":"www.auvergne-centrefrance.com/geotouring/musees/detail/mus154.htm","cp":15100,"nomdep":"CANTAL"},"geometry":{"type":"Point","coordinates":[3.094858,45.033137]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"8843546a5896d538f13b96a2a94ac1d60f19228d","fields":{"periode_ouverture":"Ouvert d'avril à juin, et de septembre à novembre du mercredi au lundi de 10h à 12h et de 14h à 18h, en juillet-août tous les jours de 10h à 12h45 et de 14h à 18h45","nom_du_musee":"Musée des Arts et Traditions Populaires de Haute Loire","ville":"LAVAUDIEU","nomreg":"AUVERGNE","ferme":"NON","fermeture_annuelle":"Décembre à mars","sitweb":"Site des amis de Lavaudieu - www.abbayedelavaudieu.fr","cp":43100,"nomdep":"HAUTE-LOIRE"},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"511e10746516e1db7600f525596213745cb20c54","fields":{"periode_ouverture":"Ouvert d'octobre à avril du mardi au samedi de 10h à 12h et de 14h à 17h dimanche de 14h à 17h, du 1er mai au 30 septembre de 10h à 12h et de 14h à 18h","nom_du_musee":"Muséum d'Histoire Naturelle Henri-Lecoq","adr":"15, rue Bardoux","ville":"CLERMONT-FERRAND","nomreg":"AUVERGNE","ferme":"NON","fermeture_annuelle":"Jours fériés","coordonnees_":[45.774138,3.088299],"sitweb":"www.museelecoq.clermont-ferrand.fr ou www.clermont-ferrand.fr/-Museum-Henri-Lecoq-.html","cp":63000,"nomdep":"PUY DE DÔME"},"geometry":{"type":"Point","coordinates":[3.088299,45.774138]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"cadb7eaa0cab5d5780b8c384b8ea6df79f894345","fields":{"annreouv":"Eté 2011 - exposition","periode_ouverture":"Ouvert d'avril à octobre du mardi au dimanche de 14h à 18h. Pour les groupe sur réservation de novembre à mars","nom_du_musee":"Musée Municipal Marcel Sahut","adr":"2, rue des Ecoles","ville":"VOLVIC","nomreg":"AUVERGNE","ferme":"OUI","coordonnees_":[45.860584,3.024326],"sitweb":"www.volvic-tourisme.com/HTML/sites/site_musee.htm","cp":63530,"nomdep":"PUY DE DÔME"},"geometry":{"type":"Point","coordinates":[3.024326,45.860584]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"adc4d9110be00831d6db0a4544b7f163b41d0a50","fields":{"annreouv":"Non encore prévue","ville":"BEAUNE","nom_du_musee":"Musée E.J Marey","adr":"Hôtel de Ville","nomreg":"BOURGOGNE","ferme":"OUI","coordonnees_":[47.026213,4.839367],"sitweb":"www.musees-bourgogne.org","cp":21200,"nomdep":"CÔTE D\u2019OR"},"geometry":{"type":"Point","coordinates":[4.839367,47.026213]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"2410e4cca0ced88f79fa6afb34ee84900261f9d5","fields":{"periode_ouverture":"Ouvert du 1er mai au 30 septembre tous les jours de 9h30 à 18h, du 1er octobre au 30 novembre et du 1er au 30 avril du mercredi au dimanche de 9h30 à 18h1er décembre au 31 mars 9h30 à 17h du mercredi au dimanche","nom_du_musee":"Musée du Vin de Bourgogne","adr":"Hôtel des Ducs\nRue d'Enfer","ville":"BEAUNE","nomreg":"BOURGOGNE","ferme":"NON","sitweb":"www.musees-bourgogne.org ou www.beaune.fr","cp":21200,"nomdep":"CÔTE D\u2019OR"},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"b99a78e8761349ee0e928f272566e880f4a4ae61","fields":{"periode_ouverture":"Ouvert du 1er avril auu 31 octobre du mercredi au dimanche de 9h30 à 12h30 et de 14h à 18h, du 1er novembre au 31 mars les mercredis, samedis et dimanches de 9h30 à 12h30 et de 14h à 18h","nom_du_musee":"Musée Archéologique","adr":"5, Rue du Docteur Maret\nCS 73310","ville":"DIJON Cedex","nomreg":"BOURGOGNE","ferme":"NON","fermeture_annuelle":"1er janvier, 1er et 8 mai, 14 juillet, 1er et 11 novembre, 25 décembre","coordonnees_":[47.32236,5.034429],"sitweb":"Site des musées de Bourgogne - www.musees-bourgogne.org","cp":21033,"nomdep":"CÔTE D\u2019OR"},"geometry":{"type":"Point","coordinates":[5.034429,47.32236]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"f59f80cd0647646b342fcb247451485916d27f22","fields":{"periode_ouverture":"Ouvert du mercredi au lundi du 2 mai au 31 octobre de 9h30 à 18h et du 2 novembre au 30 avril de 10h à 17h","nom_du_musee":"Musée des Beaux-Arts","adr":"Palais des Ducs et des Etats de Bourgogne\nCS 73310","ville":"DIJON Cedex","nomreg":"BOURGOGNE","ferme":"NON","fermeture_annuelle":"1er janvier, 1er & 8 mai, 14 juillet, 1er & 11 novembre, 25 décembre","sitweb":"http://mba.dijon.fr ou www.ville-dijon.fr","jours_nocturnes":"Mercredi de 19h à 21h","cp":21033,"nomdep":"CÔTE D\u2019OR"},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"637bc043682b56017354f2ea0b35c99da14bcca1","fields":{"annreouv":"Fermé définitivement","ville":"GEVREY-CHAMBERTIN - Reulle Vergy","nom_du_musee":"Musée des Arts et Traditions des Hautes-Côtes","adr":"1 PLACE DE LA FONTAINE","nomreg":"BOURGOGNE","ferme":"OUI","cp":21220,"nomdep":"CÔTE D\u2019OR"},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"c5e90191d4c0742852c8d95d52e9c00e97104efa","fields":{"periode_ouverture":"Ouvert des vacances de février au 30 avril et du 1er octobre au 31 décembre de 10 à 12h et de 14 à 18h,du 1er mai au 30 juin et en septembre de 10 à 13h et de 14 à 18h - Juillet/août tlj de 10 à 13h et de 14 à 19h","nom_du_musee":"Musée du Costume","adr":"16-18, rue Saint Christophe","ville":"CHATEAU-CHINON","nomreg":"BOURGOGNE","ferme":"NON","fermeture_annuelle":"Du 1er janvier jusqu'aux vacances de février, le 25 décembre","coordonnees_":[47.066701,3.933691],"sitweb":"www.cg58.fr/patrimoi/costu.htm","cp":58120,"nomdep":"NIÈVRE"},"geometry":{"type":"Point","coordinates":[3.933691,47.066701]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"7059a18149e8239be58a7292f7e5950e9e41e074","fields":{"annreouv":"1993","periode_ouverture":"Ouvert du 1er avril au 30 octobre, dimanche et lundi de 14h à 18h et du mercredi au samedi de 10h à 12h et de 14h à 18h, en juillet-août tous les jours de 10h à 12h30 et de 14h à 19h, dimanche de 14h à 19h","nom_du_musee":"Musée Auguste Grasset","adr":"Place de la Mairie","ville":"VARZY","nomreg":"BOURGOGNE","sitweb":"www.cg58.fr ou www.musees-bourgogne.org","fermeture_annuelle":"Janvier et février","coordonnees_":[47.359969,3.388063],"ferme":"NON","cp":58210,"nomdep":"NIÈVRE"},"geometry":{"type":"Point","coordinates":[3.388063,47.359969]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"c90d18dc0eb622ee530be0e63a589dd2e7ee075e","fields":{"periode_ouverture":"Ouvert de septembre à mai le mercredi de 14h à 17h et sur rendez-vous les autres jours et de Juin à août de 14h à 17h30 du mercredi au dimanche","nom_du_musee":"Museum d'Histoire Naturelle Jacques de La Comble","adr":"14, Rue Saint-Antoine","ville":"AUTUN","nomreg":"BOURGOGNE","ferme":"NON","fermeture_annuelle":"Jours fériés","coordonnees_":[46.947996,4.301812],"sitweb":"www.autun.com/tourisme/museum.php","cp":71400,"nomdep":"SAONE ET LOIRE"},"geometry":{"type":"Point","coordinates":[4.301812,46.947996]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"13a61803afdfaf4a8d2f49e8b31cdb854d554fbd","fields":{"periode_ouverture":"Ouvert du 1er octobre au 14 décembre et du 2 mars au 31 mars du lundi au samedi de 10h à 12h et de 14h à 17h, le dimanche de 14h30 à 17h et du 1er avril au 30 septembre de 9h30 à 12h et de 13h30 à 18h, juillet à septembre de 10h à 13h et de 14h à 18h","nom_du_musee":"Musée Rolin","adr":"5, rue des Bancs","ville":"AUTUN","nomreg":"BOURGOGNE","ferme":"NON","fermeture_annuelle":"1er mai, 14 juillet, 1er et 11 novembre, du 15 décembre au 21 février inclus","coordonnees_":[46.945957,4.29898],"sitweb":"www.autun.com ou Site des musées de Bourgogne","cp":71400,"nomdep":"SAONE ET LOIRE"},"geometry":{"type":"Point","coordinates":[4.29898,46.945957]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"b2f5a208605abc54cc9cc598ef22121ef398167d","fields":{"periode_ouverture":"Ouvert du mercredi au lundi de 9h30 à 12h et de 14h à 17h30","nom_du_musee":"Musée Denon","adr":"Place de l'hotel de ville","ville":"CHALON-SUR-SAONE","nomreg":"BOURGOGNE","ferme":"NON","fermeture_annuelle":"Jours fériés","coordonnees_":[46.780909,4.853057],"sitweb":"site des musées de Bourgogne","cp":71100,"nomdep":"SAONE ET LOIRE"},"geometry":{"type":"Point","coordinates":[4.853057,46.780909]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"b2e09f36dc31ef3834cb5aa64c37447bfaf4d0f1","fields":{"periode_ouverture":"Ouvert en mai tous les week-end de 14h à 18h, en juillet-aoûtdu mercredi au lundi de 10h à 12h et de 14h à 18h, en juin et septembre du mercredi au lundi de 14h à 18h","nom_du_musee":"Musée du Prieuré de Charolles","adr":"Rue du Prieuré","ville":"CHAROLLES","nomreg":"BOURGOGNE","ferme":"NON","fermeture_annuelle":"Janvier à mars","coordonnees_":[46.432489,4.279275],"sitweb":"Site des musées de Bourgogne ou site de la ville - http://www.ville-charolles.fr/musee-du-prieure","cp":71120,"nomdep":"SAONE ET LOIRE"},"geometry":{"type":"Point","coordinates":[4.279275,46.432489]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"d94379c65cfcaa324f56a67ec399ba1cff814a0b","fields":{"periode_ouverture":"Ouvert en basse saison en semaine de 10h à 12h et de 14h à 16h45, week-end et jours fériés  de 14h à 16h. En juillet, août, d'avril à juin et septembre en semaine de 10h à 12h et de 14h à 18h, week-end et jours fériés de 14h à 18h","nom_du_musee":"Musée de l'Homme et de l'Industrie - Ecomusée de la Communauté Le Creusot-Monceau-Les-Mines","adr":"Château de la Verrerie\nB.P. 53","ville":"LE CREUSOT Cedex","nomreg":"BOURGOGNE","ferme":"NON","fermeture_annuelle":"1er mai, 24 décembre au 31 décembre","sitweb":"www.ecomusee-creusot-montceau.fr","cp":71202,"nomdep":"SAONE ET LOIRE"},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"a21ed940c1ecf89269f691e75ba58514267266c8","fields":{"periode_ouverture":"Ouvert du 1er avril au 14 juin de 14h à 18h du mercredi au lundi et du 15 juin au 15 septembre tous les jours de 10h à 12h et de 14h à 18h et du 16 septembre au 31 octobre de 14h à 18h du mercredi au dimanche","nom_du_musee":"Musée de la Tour du Moulin","adr":"7-9, rue de la Tour","ville":"MARCIGNY","nomreg":"BOURGOGNE","ferme":"NON","fermeture_annuelle":"Fermeture annuelle du 1er novembre au 31 mars 2011","coordonnees_":[46.274545,4.043191],"sitweb":"www.marcigny.fr/musee-de-la-tour-du-moulin - http://tourdumoulin.blogspot.com","cp":71110,"nomdep":"SAONE ET LOIRE"},"geometry":{"type":"Point","coordinates":[4.043191,46.274545]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"507cdaf2e02f69f9b292999482cb43d4084077a3","fields":{"periode_ouverture":"Ouvert du dernier week-end de mars au premier week-end de novembre de 10h à 13h et de 14h à  18h. Accueil de groupes toute l'année","nom_du_musee":"Hôtel Dieu - Musée Greuze","adr":"21, rue de l'hôpital","ville":"TOURNUS","nomreg":"BOURGOGNE","ferme":"NON","fermeture_annuelle":"1er mai","coordonnees_":[46.562137,4.910839],"sitweb":"Site des musées de Bourgogne","cp":71700,"nomdep":"SAONE ET LOIRE"},"geometry":{"type":"Point","coordinates":[4.910839,46.562137]},"record_timestamp":"2016-09-02T13:08:03+00:00"},{"datasetid":"liste-musees-de-france-a-paris","recordid":"03ba0a6fe52d4c7e2167ac83d6315bc9caca2ccb","fields":{"periode_ouverture":"Ouvert toute l'année et tous les jours de 14h à 18h","nom_du_musee":"Maison du Blé et du Pain","adr":"2, Rue de l'Egalité","ville":"VERDUN-SUR-LE-DOUBS","nomreg":"BOURGOGNE","ferme":"NON","fermeture_annuelle":"Du 20 décembre  au 21 janvier inclus","coordonnees_":[46.898754,5.022453],"sitweb":"www.verdunsurledoubs.fr rubrique culture ou www.ecomusee-de-la-bresse.com","cp":71350,"nomdep":"SAONE ET LOIRE"},"geometry":{"type":"Point","coordinates":[5.022453,46.898754]},"record_timestamp":"2016-09-02T13:08:03+00:00"}]
         */
     
        private int nhits;
        private ParametersBean parameters;
        private List<RecordsBean> records;
     
        public int getNhits() {
            return nhits;
        }
     
        public void setNhits(int nhits) {
            this.nhits = nhits;
        }
     
        public ParametersBean getParameters() {
            return parameters;
        }
     
        public void setParameters(ParametersBean parameters) {
            this.parameters = parameters;
        }
     
        public List<RecordsBean> getRecords() {
            return records;
        }
     
        public void setRecords(List<RecordsBean> records) {
            this.records = records;
        }
     
        public static class ParametersBean {
            /**
             * dataset : ["liste-musees-de-france-a-paris"]
             * timezone : UTC
             * rows : 50
             * format : json
             * pretty_print : true
             */
     
            private String timezone;
            private int rows;
            private String format;
            private boolean pretty_print;
            private List<String> dataset;
     
            public String getTimezone() {
                return timezone;
            }
     
            public void setTimezone(String timezone) {
                this.timezone = timezone;
            }
     
            public int getRows() {
                return rows;
            }
     
            public void setRows(int rows) {
                this.rows = rows;
            }
     
            public String getFormat() {
                return format;
            }
     
            public void setFormat(String format) {
                this.format = format;
            }
     
            public boolean isPretty_print() {
                return pretty_print;
            }
     
            public void setPretty_print(boolean pretty_print) {
                this.pretty_print = pretty_print;
            }
     
            public List<String> getDataset() {
                return dataset;
            }
     
            public void setDataset(List<String> dataset) {
                this.dataset = dataset;
            }
        }
     
        public static class RecordsBean {
            /**
             * datasetid : liste-musees-de-france-a-paris
             * recordid : df4e8d92d3ab3a7f43785986fe9a91a421ad9844
             * fields : {"periode_ouverture":"Ouvert du 2 mai au 15 juin de 14h à 17h et du 15 juin au 15 septembre de 10h à 12h et de 14h à à 18h du mercredi au lundi, du 15 septembre au 15 octobre de 14h à 17h du mercredi au lundi","nom_du_musee":"Musée de la Chartreuse","adr":"4, Cour des Chartreux","ville":"MOLSHEIM","nomreg":"ALSACE","ferme":"NON","coordonnees_":[48.54278,7.49023],"sitweb":"www.chartreuse-molsheim.info","cp":67120,"nomdep":"BAS-RHIN"}
             * geometry : {"type":"Point","coordinates":[7.49023,48.54278]}
             * record_timestamp : 2016-09-02T13:08:03+00:00
             */
     
            private String datasetid;
            private String recordid;
            private FieldsBean fields;
            private GeometryBean geometry;
            private String record_timestamp;
     
            public String getDatasetid() {
                return datasetid;
            }
     
            public void setDatasetid(String datasetid) {
                this.datasetid = datasetid;
            }
     
            public String getRecordid() {
                return recordid;
            }
     
            public void setRecordid(String recordid) {
                this.recordid = recordid;
            }
     
            public FieldsBean getFields() {
                return fields;
            }
     
            public void setFields(FieldsBean fields) {
                this.fields = fields;
            }
     
            public GeometryBean getGeometry() {
                return geometry;
            }
     
            public void setGeometry(GeometryBean geometry) {
                this.geometry = geometry;
            }
     
            public String getRecord_timestamp() {
                return record_timestamp;
            }
     
            public void setRecord_timestamp(String record_timestamp) {
                this.record_timestamp = record_timestamp;
            }
     
            public static class FieldsBean {
                /**
                 * periode_ouverture : Ouvert du 2 mai au 15 juin de 14h à 17h et du 15 juin au 15 septembre de 10h à 12h et de 14h à à 18h du mercredi au lundi, du 15 septembre au 15 octobre de 14h à 17h du mercredi au lundi
                 * nom_du_musee : Musée de la Chartreuse
                 * adr : 4, Cour des Chartreux
                 * ville : MOLSHEIM
                 * nomreg : ALSACE
                 * ferme : NON
                 * coordonnees_ : [48.54278,7.49023]
                 * sitweb : www.chartreuse-molsheim.info
                 * cp : 67120
                 * nomdep : BAS-RHIN
                 */
     
                private String periode_ouverture;
                private String nom_du_musee;
                private String adr;
                private String ville;
                private String nomreg;
                private String ferme;
                private String sitweb;
                private int cp;
                private String nomdep;
                private List<Double> coordonnees_;
     
                public String getPeriode_ouverture() {
                    return periode_ouverture;
                }
     
                public void setPeriode_ouverture(String periode_ouverture) {
                    this.periode_ouverture = periode_ouverture;
                }
     
                public String getNom_du_musee() {
                    return nom_du_musee;
                }
     
                public void setNom_du_musee(String nom_du_musee) {
                    this.nom_du_musee = nom_du_musee;
                }
     
                public String getAdr() {
                    return adr;
                }
     
                public void setAdr(String adr) {
                    this.adr = adr;
                }
     
                public String getVille() {
                    return ville;
                }
     
                public void setVille(String ville) {
                    this.ville = ville;
                }
     
                public String getNomreg() {
                    return nomreg;
                }
     
                public void setNomreg(String nomreg) {
                    this.nomreg = nomreg;
                }
     
                public String getFerme() {
                    return ferme;
                }
     
                public void setFerme(String ferme) {
                    this.ferme = ferme;
                }
     
                public String getSitweb() {
                    return sitweb;
                }
     
                public void setSitweb(String sitweb) {
                    this.sitweb = sitweb;
                }
     
                public int getCp() {
                    return cp;
                }
     
                public void setCp(int cp) {
                    this.cp = cp;
                }
     
                public String getNomdep() {
                    return nomdep;
                }
     
                public void setNomdep(String nomdep) {
                    this.nomdep = nomdep;
                }
     
                public List<Double> getCoordonnees_() {
                    return coordonnees_;
                }
     
                public void setCoordonnees_(List<Double> coordonnees_) {
                    this.coordonnees_ = coordonnees_;
                }
            }
     
            public static class GeometryBean {
                /**
                 * type : Point
                 * coordinates : [7.49023,48.54278]
                 */
     
                private String type;
                private List<Double> coordinates;
     
                public String getType() {
                    return type;
                }
     
                public void setType(String type) {
                    this.type = type;
                }
     
                public List<Double> getCoordinates() {
                    return coordinates;
                }
     
                public void setCoordinates(List<Double> coordinates) {
                    this.coordinates = coordinates;
                }
            }
        }
    }
    ça pourrait servir à d'autre cette information

Discussions similaires

  1. récupérer une date dans excel en double
    Par pbatty1 dans le forum C#
    Réponses: 0
    Dernier message: 17/02/2011, 16h51
  2. Récupérer une date dans une chaine
    Par GSASA dans le forum Langage
    Réponses: 2
    Dernier message: 08/03/2010, 07h14
  3. récupérer une date dans une chaîne
    Par mymeal dans le forum MFC
    Réponses: 16
    Dernier message: 29/10/2008, 20h37
  4. Récupérer une date dans une CString
    Par cjacquel dans le forum MFC
    Réponses: 1
    Dernier message: 05/09/2007, 17h07
  5. Réponses: 5
    Dernier message: 01/06/2006, 11h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo