A voir également:
- Stocker texte dans un tableau
- Tableau word - Guide
- Trier un tableau excel - Guide
- Tableau ascii - Guide
- Imprimer un tableau excel - Guide
- Tableau croisé dynamique - Guide
2 réponses
Il y a quelque chose de très maladroit dans ton code, c'est de passer un tableau en paramètre, alors que l'on ne connaît pas la taille du fichier, il est plus sûr de passer par des listes.
Si tu as bien le format de fichier indiqué avant tu peux le lire comme ça :
Remarque : la Russie est en Asie, elle devrait avoir le même code que la Chine ou le Japon.
Si tu as bien le format de fichier indiqué avant tu peux le lire comme ça :
import java.io.File; import java.io.FileNotFoundException; import java.util.LinkedList; import java.util.Scanner; public class Nation { // Constructeur bidon public Nation(int continent, String pays, String capitale, int superficie, int population) { System.out.printf("%d - %s - %s - %d - %d\n", continent,pays,capitale,superficie,population); } public static Nation[] lire(String nomFichier) throws FileNotFoundException { Scanner sc = new Scanner(new File(nomFichier)); LinkedList<Nation> liste = new LinkedList<Nation>(); while (sc.hasNextLine()) { String[] tab = sc.nextLine().split(" "); int continent = Integer.parseInt(String.valueOf(tab[0].charAt(0))); String pays = tab[0].substring(1); String capitale = tab[1]; int superficie = Integer.parseInt(tab[2]); int population = Integer.parseInt(tab[3]); liste.add(new Nation(continent,pays,capitale,superficie,population)); } sc.close(); return liste.toArray(new Nation[liste.size()]); } public static void main(String[] args) throws FileNotFoundException { Nation[] nations = lire("C:/test.txt"); } }
Remarque : la Russie est en Asie, elle devrait avoir le même code que la Chine ou le Japon.
liljohn27
Messages postés
26
Date d'inscription
Statut
Membre
Dernière intervention
Oui c'est vrai pour la Russie mais t'inquiète le programme va proposer de modifier le code continent .