public static boolean validerEntierDansIntervalle(String nomPrenom, int BORNE_INF, int BORNE_SUP) throws EmployeInvalideException {
boolean estValide = false;
if (nomPrenom.length() >= BORNE_INF && nomPrenom.length() <= BORNE_SUP) {
estValide = true;
} else {
String msg = "L'entier " + nomPrenom + " n'est pas dans l'intervalle [" + BORNE_INF+ " à " + BORNE_SUP + "]";
EmployeInvalideException e = new EmployeInvalideException(msg);
throw e;
}
return estValide;
}
public static boolean ValiderCaracEtCaracSpeciaux(String nomPrenom) throws EmployeInvalideException {
boolean valide = true;
nomPrenom = nomPrenom.trim();
char car;
int i = 0;
while (valide == true && i<nomPrenom.length()) {
car = nomPrenom.charAt(i);
if(estUneLettre(car)==true || car == '\'' ||car == '-' || car == ' '){
i++;
}
else{
valide=false;
String msg = "Le caractere " + car + " n'est pas valide";
EmployeInvalideException e = new EmployeInvalideException(msg);
throw e;
}
}
return valide;
}
/**
* cette methode verifie si le nom est valide ( 3 a 20 caracteres et ne prend qu'un tiret, apostrophe et l'espace comme caracteres speciaux
*
*pas de parametre
*return un nom valide
*/
public static String saisirNom () {
String nom = "";
boolean verifLongueur = false;
boolean verifCharSpeciaux = false;
final String MESS_SOLL_NOM = "Entrez votre nom. Limite caractere: 3-20. Caractère speciaux autorisé: -, ,' ";
final String MESS_ERREUR = "Ce nom nest pas entre 3 et 20 caracteres";
do{
try {
System.out.println (MESS_SOLL_NOM);
nom = Clavier.lireString();
verifLongueur = validerEntierDansIntervalle (nom,3,20);
verifCharSpeciaux = ValiderCaracEtCaracSpeciaux (nom);
}catch (EmployeInvalideException e) {
System.out.println ("***Erreur "+ e);
}
}while(verifLongueur == false || verifCharSpeciaux == false);
return nom;
}
Be the first to comment
You can use [html][/html], [css][/css], [php][/php] and more to embed the code. Urls are automatically hyperlinked. Line breaks and paragraphs are automatically generated.