Je lis des données d'un fichier CSV et je veux les stocker dans hashMap. Il y a 3 colonnes, toutes des chaînes. J'utilise ce code:Charger dynamiquement des données dans HashMap
listDataHeader = new ArrayList<String>();
listDataChild = new HashMap<String,List<String>>();
InputStream inputStream = getResources().openRawResource(R.raw.photographers);
CSVReader csv = new CSVReader(inputStream);
List<String[]> data = csv.read();
List<String> info = new ArrayList<String>();
for(String[] children : data){
info.add(children[1]);
info.add(children[2]);
}
//fill data for the child
for (String[] line : data) {
listDataHeader.add(line[0]);
listDataChild.put(listDataHeader.get(0),info);
}
Le listdataChild devrait garder les informations du 2ème et 3ème colonne du CSV. Actuellement, il charge plus d'une fois cette information. Je serais heureux d'avoir des idées, merci!
Votre question n'est pas très claire, dans votre CSV la première colonne est votre en-tête? et vous voulez garder les 2 et 3 colonnes dans la carte comme valeurs et la première colonne comme clé dans la carte? –
Oui, exactement. La première colonne conserve les informations qui doivent être placées dans listDataHeader (clé), alors que les deux suivantes fonctionnent comme des valeurs et doivent être stockées dans listdataChild. Merci! – VyaraG