Saisie au clavier
Par François Pfister,
mercredi 22 mars 2006 à 11:37 :: Cours et TP Java 2A 2006
:: #26
:: rss
La classe Console permet de saisir des valeurs numériques ou texte au clavier. (Convient pour des tests).
/**
*
* @author pfister
*
*/
public class TestConsole {
public static void main(String[]args){
try {
double d1 = Console.readDouble("saisissez un nombre réel");
System.out.println(d1);
int n1= Console.readInt("saisissez un nombre entier");
System.out.println(n1);
String unMot = Console.readLine("entrez un mot");
System.out.println(unMot);
System.out.println("TERMINE");
} catch (Exception e) {
e.printStackTrace();
}
}
}
|
/**
* @author pfister
*/
public class Console {
/*
* affiche un message et attend une saisie au clavier
*/
public static String readLine(String message) {
System.out.print(message + ">"); // prompt
String resultat = "";
try {
int car = 0;
while (true) {
car = System.in.read();
// System.out.print("["+car+"]"); //pour debug
if (car != 13 && car != 10)
resultat += (char) car;
else if (car == 10)
break;
}
} catch (Exception e) {
System.err.println("erreur pendant la saisie de " + message);
}
return resultat;
}
/*
* affiche un message et attend une saisie d'un nombre entier au clavier
*/
public static int readInt(String message) throws Exception {
String nbre = readLine(message);
int n;
try {
n = Integer.parseInt(nbre);
} catch (java.lang.NumberFormatException e) {
System.err.println("erreur pendant la saisie de " + message);
throw new Exception(e);
}
return n;
}
/*
* affiche un message et attend une saisie d'un nombre réel au clavier
*/
public static double readDouble(String message) throws Exception {
String nbre = readLine(message);
int errindex = nbre.lastIndexOf(",");
if (errindex > -1)
nbre = nbre.substring(0, errindex) + "." + nbre.substring(errindex + 1);
double n;
try {
n = Double.parseDouble(nbre);
} catch (java.lang.NumberFormatException e) {
System.err.println("erreur pendant la saisie de " + message);
throw new Exception(e);
}
return n;
}
/*
* affiche un message simple sans saisie au clavier
*/
public static void afficheMessage(String msg) {
System.out.println(msg);
}
}
|
Commentaires
Aucun commentaire pour le moment.
Ajouter un commentaire
Les commentaires pour ce billet sont fermés.