2011-06-06 5 views
0

J'essaie de convertir un JSONArray dont le format String est multidimensionnel en un tableau multidimensionnel Java. J'ai essayé beaucoup de façons par moi-même et je me perds dans ma tâche. J'espère que quelqu'un ici peut apporter une certaine clarté. La conversion en un tableau normal est bien. Mais quand j'essaie de m'étendre à un multi-dimensionnel je ne peux pas.JSON Multi-Dimensional Array Array multidimensionnel

public static final String stationData[][] = { 
    // Station Names 
      { "The Point", "Spencer Dock", "Mayor Square - NCI", 
        "George's Dock", "Bus Aras", "Connolly", "Brides Glen", 
        "Cherrywood", "Laughanstown", "Carrickmines" }, 
      // Station Url Fragments 
      { "The%20Point", "Spencer%20Dock", "Mayor%20Square%20-%20NCI", 
        "George%27s%20Dock", "Bus%26aacute%3Bras", "Connolly", 
        "Brides%20Glen", "Cherrywood", "Laughanstown", 
        "Carrickmines"} 
    }; 

JSONArray myArray = (JSONArray) JSONSerializer.toJSON(stationData);

Je suis tout simplement jouer avec ce tableau pour voir si je peux le faire fonctionner. Donc, à ce stade de mon code, quelqu'un peut-il me dire comment: à partir du JSONArray, j'ai recréé le tableau java multidimensionnel par lequel il a été créé?

L'aide serait grandement appréciée. Je vous remercie.

+1

Je sais que la question se rapporte spécifiquement à JSON -> Java arrays; peut-être y a-t-il un cas général ici, mais pourquoi n'utilisez-vous pas une fonction d'encodage d'URL au lieu de ce type de mapping? Ou peut-être qu'il y a quelque chose dans http://stackoverflow.com/questions/338586/a-better-java-json-library qui aidera. – Jonathan

+0

Je pourrais regarder dedans. J'ai essayé de cette façon pendant un certain temps, je voudrais idéalement le voir à travers mais je pourrais éventuellement essayer ces méthodes grâce. – Hugs

Répondre

1

Transforme mon problème était assez trivial. J'étais inquiet que je n'étais pas capable de le faire avec 1 ou 2 lignes de code et je devais à peu près remplir le tableau avec des données manuellement. Voici comment je l'ai fait de toute façon.

 JSONArray myArray = (JSONArray) JSONSerializer.toJSON(stationData); 
    //Slightly hard coded here. 
    String[][] test = new String[myArray.getJSONArray(0).size()][myArray.getJSONArray(1).size()]; 

    for(int i = 0; i < myArray.size(); i++){ 
     for(int j = 0; j < myArray.getJSONArray(i).size(); j++){ 
      test[i][j] = (String) myArray.getJSONArray(i).get(j); 

     } 
    } 
0

Peut-être que vous cherchez ceci:

public static final String stationData[][] = { 
    { "The Point", "The%20Point"}, 
    {"Spencer Dock", "Spencer%20Dock"}, 
    {"Mayor Square - NCI","Mayor%20Square%20-%20NCI"}, 
    {"George's Dock", "George%27s%20Dock"} 
}; 
+0

Non désolé j'ai besoin du code qui va convertir mon JSONArray qui est multi-dimensionnel en Java. Merci, merci. – Hugs

+0

Alors, qu'est-ce que vous avez? Un objet d'une bibliothèque tierce? – SJuan76

+0

Oui c'est ce que j'ai l'intention de réaliser. Pour l'instant, j'essaie juste de me familiariser avec la conversion du tableau. – Hugs