renforcé l'algorithme pour éviter toute casse

This commit is contained in:
as704245 2019-10-10 14:36:33 +02:00
parent d2e900a78b
commit e1f3fe111d

View File

@ -1,4 +1,4 @@
package config; package config;
import java.io.*; import java.io.*;
import java.util.*; import java.util.*;
@ -85,17 +85,18 @@ public class Config {
// ce caractere apparait uniquement en debut de fichier // ce caractere apparait uniquement en debut de fichier
if (ligne.startsWith("\uFEFF")) if (ligne.startsWith("\uFEFF"))
ligne = ligne.substring(1); ligne = ligne.substring(1);
while (ligne.equals("")) // on saute les lignes vides si elles sont au debut du fichier while (scan.hasNext() || !ligne.isEmpty() || ligne.equals(System.lineSeparator())) {
ligne = scan.nextLine(); if (!ligne.equals("")) {
while (scan.hasNext()) { if (!(ligne.substring(0, 1).equals("#"))) // si ligne commence par un # c'est un commentaire, donc
if (!(ligne.substring(0, 1).equals("#"))) // si ligne commence par un # c'est un commentaire, donc on // on
// l'ignore // l'ignore
{ {
if (ligne.substring(0, 1).equals("*")) // si ligne commence par une *, c'est une question if (ligne.substring(0, 1).equals("*")) // si ligne commence par une *, c'est une question
{ {
q = makeQuestion(ligne); q = makeQuestion(ligne);
ligne = scan.nextLine(); // on scan la prochaine ligne ligne = scan.nextLine(); // on scan la prochaine ligne
while (!ligne.equals("")) // tant que la ligne n'est pas vide, on lit la suite qui est supposé while (!ligne.equals("")) // tant que la ligne n'est pas vide, on lit la suite qui est
// supposé
// etre les reponses // etre les reponses
{ {
q.addReponse(ligne); q.addReponse(ligne);
@ -107,6 +108,7 @@ public class Config {
lireParam(ligne); lireParam(ligne);
} }
} }
}
ligne = scan.nextLine(); ligne = scan.nextLine();
while (ligne.equals("")) // on saute les lignes vides avant de recommencer la boucle while while (ligne.equals("")) // on saute les lignes vides avant de recommencer la boucle while
ligne = scan.nextLine(); ligne = scan.nextLine();
@ -154,15 +156,18 @@ public class Config {
public void lireParam(String s) { public void lireParam(String s) {
int n = s.indexOf(":"); // recherche de position du premier ":" pour pouvoir separer le nom du param de int n = s.indexOf(":"); // recherche de position du premier ":" pour pouvoir separer le nom du param de
// sa valeur // sa valeur
if (n != -1) // si -1 alors il n'y a pas de : et donc ce n'est pas un paramètre
{
String spl[] = { s.substring(0, n), s.substring(n + 1, s.length()) }; String spl[] = { s.substring(0, n), s.substring(n + 1, s.length()) };
while (spl[1].substring(0, 1).equals(" ")) while (spl[1].substring(0, 1).equals(" "))
spl[1] = spl[1].substring(1, spl[1].length()); spl[1] = spl[1].substring(1, spl[1].length());
spl[0] = spl[0].toUpperCase(); // pour eviter la casse, on met tout en upper case spl[0] = spl[0].toUpperCase().trim(); // pour eviter la casse, on met tout en upper case
switch (spl[0]) // chaque case correspond é un parametre, pour le moment on ignore tout switch (spl[0]) // chaque case correspond é un parametre, pour le moment on ignore tout
// parametre qui n'est pas utile au programme. // parametre qui n'est pas utile au programme.
{ {
case "PAPERSIZE": case "PAPERSIZE":
setPaperSize(spl[1]); setPaperSize(spl[1]);
break; break;
case "CODE": case "CODE":
@ -207,6 +212,7 @@ public class Config {
default: // parametre mal tapé ou non utile (pour le moment) au programme, on l'ignore default: // parametre mal tapé ou non utile (pour le moment) au programme, on l'ignore
} }
} }
}
// liste des set de chaque valeur de parametre // liste des set de chaque valeur de parametre
// actuellement, uniquement les parametres de l'étape 1 sont traités // actuellement, uniquement les parametres de l'étape 1 sont traités