Le 07/07/2011 17:08, camille de la Vega a écrit :
C'est bon j'ai réglé les problème de changement de code mais je ne comprend pas pourquoi "matrix" n'existe pas puisqu'elle est définie à la ligne 118 par "MatrixND matrix=..." Tout ce qui est définit dans un methode ne vie que dans la methode. A la fin de la methode il disparait.
Je pense que ce que tu veux, c'est l'initialiser dans l'init pour l'utiliser apres. Pour ca il faut declarer la matrice dans la classe entiere et non dans la methode: public class PlanSimuSelectivite implements AnalysePlan { protected MatrixND matrix; // <<< declaration hors de la méthode public void init(AnalysePlanContext context) throws Exception { File dir = new File(param_directory); // plus de declaration ici, seulement initialisation matrix = MatrixFactory.getInstance().create(new int[]{param_simulationNumber, param_parameterNumber}); matrix.importCSV(new FileReader(new File(dir, MATRIXSELECTIVITE + ".txt")), new int[]{0,0}); matrix.setSemantic(1, Arrays.asList(new String[]{SELECTIVITYMERLU, SELECTIVITYLANGOUSTINE})); System.out.println(matrix); } private String getString(String name, int simulation) throws Exception { File dir = new File(param_directory); Properties prop = new Properties(); prop.load(new BufferedReader(new FileReader(new File(dir, name + ".txt")))); int ligne = simulation + param_first; // et utilisation ici int mod = matrix.getValue(ligne , name); String result = prop.getProperty(""+mod); return result; } } -- Éric Chatellier <chatellier@codelutin.com> Tel: 02.40.50.29.28 http://www.codelutin.com