Bonjour,
Je suis en train de développer une application android pour un stage et j'ai un problème de conversion d'un JSONArray en arrayList, lors de la conversion j'ai les deux lignes qui disparaissent, ici la latitude et la longitude.
l'application doit récupérer des données sur des restaurateurs dans une base distante pour pouvoir les enregistrer dans une base locale comme favoris.

Voici le main:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
    String requete = "SELECT * FROM restaurateurs;";
		BaseDistante uneBaseDistante = new BaseDistante();
		JSONArray resultRequete = uneBaseDistante.getServerData(requete);
		Log.e("JSONArray", resultRequete.toString());
		//tous les champs sont la
 
 
 
		ArrayList<Restaurateur> lesRestaurateurs = new ArrayList<Restaurateur>();
		lesRestaurateurs = uneBaseDistante.jsonToRestaurateurs(resultRequete);
		Log.e("ArrayList", lesRestaurateurs.toString());
		//Il maque la latitude et la longitude
Voici la méthode JsonToRestaurateurs:
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
public  ArrayList<Restaurateur> jsonToRestaurateurs(JSONArray arrayDeRestaureteur){
		ArrayList<Restaurateur> desRestaurateurs = new ArrayList<Restaurateur>();
		for (int i = 0; i< arrayDeRestaureteur.length(); i++) {
			try {
				int idRestaurateur = arrayDeRestaureteur.getJSONObject(i).getInt("idRestaurateur");
				String nomRestaurateur = arrayDeRestaureteur.getJSONObject(i).getString("nom");
				String typeRestaurant = arrayDeRestaureteur.getJSONObject(i).getString("typeRestaurant");
				int noRue = arrayDeRestaureteur.getJSONObject(i).getInt("noRue");
				String typeRue = arrayDeRestaureteur.getJSONObject(i).getString("typeRue");
				String nomRue = arrayDeRestaureteur.getJSONObject(i).getString("nomRue");
				//int codePostal = arrayDeRestaureteur.getJSONObject(i).getInt("codePostal");
				//String nomVille = arrayDeRestaureteur.getJSONObject(i).getString("nomVille");
				double latitude = arrayDeRestaureteur.getJSONObject(i).getDouble("latitude");
				double longitude = arrayDeRestaureteur.getJSONObject(i).getDouble("longitude");
 
				Restaurateur unRestaurateur = new Restaurateur(idRestaurateur, nomRestaurateur, typeRestaurant, noRue, typeRue, nomRue, /*codePostal, nomVille,*/ latitude, longitude);
				desRestaurateurs.add(unRestaurateur);
			} catch (JSONException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
 
		}
		return desRestaurateurs;
	}
Voici le log du JSONArray:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
11-22 10:10:19.476: E/JSONArray(446): [{"horaireJe":null,"nomRue":"Lepetit","typeRestaurant":"3","horaireVe":null,"horaireSa":null,"noRue":"25","carte":"","typeRue":"rue","idVille":"1","horaireLu":null,"nom":"Chez Bob","description":"Bienvenu chez bob marley","longitude":"1.32","horaireMe":null,"latitude":"1.25","horaireDi":null,"idRestaurateur":"1","horaireMa":null},{"horaireJe":"19h - 0h00","nomRue":"des chemins","typeRestaurant":"2","horaireVe":"19h - 0h00","horaireSa":"19h - 0h00","noRue":"45","carte":"","typeRue":null,"idVille":"1","horaireLu":null,"nom":"Le Grand Gourmet","description":"Le Restaurant des gourmets!!!","longitude":"1.34","horaireMe":"19h - 0h00","latitude":"1.25","horaireDi":"19h - 0h00","idRestaurateur":"2","horaireMa":"19h - 0h00"},{"horaireJe":"","nomRue":"Des groseilles","typeRestaurant":"2","horaireVe":"","horaireSa":"","noRue":"45","carte":"","typeRue":"rue","idVille":"1","horaireLu":"","nom":"Chez Mireille","description":"Des bons plats maison","longitude":"1.34","horaireMe":"","latitude":"1.12","horaireDi":"","idRestaurateur":"3","horaireMa":""},{"horaireJe":"","nomRue":null,"typeRestaurant":"4","horaireVe":"","horaireSa":"","noRue":"65","carte":"","typeRue":"rue","idVille":"1","horaireLu":"","nom":"Chez Riton","description":"Routier","longitude":"0","horaireMe":"","latitude":"0","horaireDi":"","idRestaurateur":"4","horaireMa":""}]
et finalement celui de l'ArrayList:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
11-22 10:10:19.486: E/ArrayList(446): [Restaurateur [idRestaurateur=1, nomRestaurateur=Chez Bob, typeRestaurant=3, noRue=25, typeRue=rue, nomRue=Lepetit], Restaurateur [idRestaurateur=2, nomRestaurateur=Le Grand Gourmet, typeRestaurant=2, noRue=45, typeRue=null, nomRue=des chemins], Restaurateur [idRestaurateur=3, nomRestaurateur=Chez Mireille, typeRestaurant=2, noRue=45, typeRue=rue, nomRue=Des groseilles], Restaurateur [idRestaurateur=4, nomRestaurateur=Chez Riton, typeRestaurant=4, noRue=65, typeRue=rue, nomRue=null]]
Quelqu'un Aurait-il une idée, ça doit certainement être une erreur toute bête mais là je ne trouve pas?
Merci.