import java.io.*;
import java.util.ArrayList;
import java.util.List;
import java.util.StringTokenizer;
//classe pour recuperer le labyrinthe du fichier txt sous forme de tableau exploitable et pour afficher le labyrinthe.
public class Labyrinthe {
//variables d'instance
private String nomFichier;
private char[][] plateau;
//constructeur pour avoir le tableau du labyrinthe des que l'on cree l'objet Labyrinthe
public Labyrinthe(){
nomFichier = "labyrinthe.txt";
FileReader fichier=null;
try{
fichier= new FileReader(nomFichier);
} catch (FileNotFoundException e){
System.out.println(e);
}
BufferedReader lecteur= new BufferedReader(fichier);
String ligne= null;
List<String> lignes = new ArrayList<String>();
StringTokenizer separateur;
try{
while ((ligne=lecteur.readLine())!=null)
lignes.add(ligne);
fichier.close();
} catch (IOException e){
System.out.println(e);
}
plateau= new char[lignes.size()][27];
for(int i=0;i<lignes.size();i++){
separateur= new StringTokenizer(lignes.get(i),",");
int j=0;
while (separateur.hasMoreTokens()){
plateau[i][j]=separateur.nextToken().charAt(0);
j++;
}
}
}
public char getValeur(float x, float y){
int a=(int)Math.floor(y);
int b=(int) Math.floor(x);
if (0<=a && a<plateau.length && 0<=b && b<plateau[0].length)
return plateau[a][b];
else
return 'E';
}
public void setValeur(float x,float y, char c){
int a=(int)Math.floor(y);
int b=(int) Math.floor(x);
if (0<=a && a<plateau.length && 0<=b && b<plateau[0].length)
plateau[a][b]=c;
}
public int getNombreLignes(){
return plateau.length;
}
public int getNombreColonnes(){
return plateau[0].length;
}
public static void main(String args[]) {
Labyrinthe terrain=new Labyrinthe();
for (int i=0;i<terrain.getNombreLignes();i++){
for (int j=0; j<terrain.getNombreColonnes();j++)
System.out.print(terrain.getValeur(j, i));
System.out.println();
}
}
}
Partager