2016-04-14 1 views
0

J'ai essayé ces deux derniers jours de le faire. J'ai recherché et fait des copies de celui-ci, mais aucun d'eux ne fonctionne, j'ai essayé des charges faciles. mais aucun ne fonctionne de toute façon.Comment charger un fichier txt.file dans un objet existant?

public class Data 
{ 
String Name; 
int Points; 
int Heart, Next; 

public Data(String N,int A,int V,int P) 

{  Name = N; 
    Next = A; 
    Heart = V; 
    Points = P; 

    } 
} 

je les enregistrer comme cette

bw.write(Dat[j].Name + " " + Dat[j].Next + "" + Dat[j].Heart + " " + Dat[j].Points); 

Après cela, il est une fonction qui enregistre les données de l'objet et le placer comme un text.file qui est « Players.txt » et finit par comme ce Par exemple:

HECTOR 0 3 0

Mary 0 3 0

JOHN 0 3 0

Victor 0 3 0

Maintenant, c'est un tableau de données, étant données Dat [] = nouvelles données [Max]; et il y a un compteur de "J" à chaque fois comme un objet simple. Tout ce que je veux quand le programme commence est de charger toutes les données qui sont dans le fichier texte et le mettre en tant que cet objet.

public static void Scoreboard() 
    { Loading(); // this suppose to be the function to load the data 
     f(j > 0) 
      { 
     for(int i=0; i<j; i++) 
       { 

    Dat[j].Show("Number"+(j+1)); // .Show is a function in the object Data  

       }//for 

      }//if 
      else System.out.print("No users"); 
      return; 
     }// Scoreboard 

Je suis assez nouveau pour Java, et je ne comprends vraiment le lecteur en mémoire tampon et écrivain, je vous remercie de l'aide grâce à l'avance.

Répondre

0

Mise à jour rapide Je l'ai fait par moi-même celui qui me demande ici est mon code. (Son sur l'espagnol)

public static void Loading() 
     { 

String Nombre; 
int Vida; 
int Puntuacion; 
int Aprobado; 
File f = new File(ruta); 
     try 
     { /*Si existe el fichero*/ 
      if(f.exists()) 
      { /*Abre un flujo de lectura a el fichero*/ 
       BufferedReader Flee= new BufferedReader(new FileReader("Jugadores.txt")); 
       String str=null; 
       /*Lee el fichero linea a linea hasta llegar a la ultima*/ 
       ArrayList<String> lines = new ArrayList<String>(); 
       while((str=Flee.readLine())!=null) 
       { /*Imprime la linea leida*/ 
        lines.add(str); 
        String[] linesArray = lines.toArray(new String[lines.size()]); 
       }//WHILE 
       /*Cierra el flujo*/ 

       for(int j=0; j<=lines.size();j = j + 4){ 
       Nombre= lines.get(j); 
       Aprobado= Integer.parseInt(lines.get(j+1)); 
       Vida= Integer.parseInt(lines.get(j+2)); 
       Puntuacion= Integer.parseInt(lines.get(j+3)); 

       Dat[cp] = new Datos(Nombre,Aprobado,Vida,Puntuacion); 
       cp ++; 
       } 





       Flee.close(); 
      } 
      else 
       System.out.println("Fichero No Existe"); 
     }//try 
     catch (Exception ex) 
     { /*Captura un posible error y le imprime en pantalla*/ 
      System.out.println(ex.getMessage()); 
     }//catch 
} 

Je l'ai fait en une ligne ArrayList par ligne, Bien sûr, vous avez besoin de votre fichier texte à être comme par exemple: HECTOR

Cheers