Bonjour ,

J'ai quelques soucis pour réaliser mon objectif qui est d'afficher dans un tableau (jTable)
pseudo / score , trier par score du plus grand au plus petit , une liste de pseudo et score .

Tout d'abord , j'ecris dans un fichier texte mon pseudo et mon score , ensuite je lis ce fichier texte , je recupere les données et je les stocke dans un ArrayList.

Mon soucis c'est que je n'arrive pas à faire de tri sur le score du fait que mon tri ce fait sur la chaine de caractere pseudo + score .

Je vous met le code de tout ce qui peut etre utile . Si vous avez besoin de plus d'elements je vous les fournirai .


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
class Lireetecrire{
 
            public void ecrire(String texte){
 
            String adressedufichier = System.getProperty("user.dir") + "\\monfichier.txt";
 
            try{
 
 
            FileWriter fw = new FileWriter(adressedufichier, true);
 
            BufferedWriter output = new BufferedWriter(fw);
 
            output.write(texte);
 
            output.flush();
 
            output.close();
 
            }
            catch(IOException ioe){System.out.println("erreur : " + ioe );}
 
            }
 
            public void lire(){
            	 String name = "monfichier.txt";
 
            	 List<String> list = new ArrayList<String>();
 
            	 try{
 
            	     Scanner s = new Scanner(new FileReader(new File(name)));
            	     while(s.hasNext())
            	     {         
            	    	list.add((s.nextLine()));            	    	          	                	     	
 
            	 }
            	     for (int index = 0; index < list.size(); index++)
            	     {            	    	
            	    	 Collections.sort(list, Collections.reverseOrder()); 	
      	    		   System.out.println(list.get(index));
            	     }         	     	            	     
            	 }catch(Exception e){
            	     e.printStackTrace();
            	 }          	 
            }
        }
 
 
/* ici je lance l ecriture du pseudo et du score dans le fichier */ 
 
String pseudoT = (nom);			
 int scoreT = (h);
 Lireetecrire lee = new Lireetecrire();
 
 				lee.ecrire(scoreT+";");
 				lee.ecrire(pseudoT+";");
 				lee.ecrire("\n");
mon fichier texte ressemble a ca :
600;asze;
900;kijfrgg;
1700;koerf;