Lire du clavier en java

Fermé
tihout Messages postés 68 Date d'inscription vendredi 30 mars 2007 Statut Membre Dernière intervention 30 juillet 2012 - 20 mars 2008 à 18:20
 Fabrice - 12 avril 2011 à 03:01
Bonjour,voila g un probleme pr lire un entier du clavier en java
j travaille sous dos ;j'ai ecrit un petit prog lors de la compile pas de bléme mais lors de l'execution une exception ce produit voila le prog si vous trouvé ce qui cloche j vs serai reconnaissant:

import java.util.Scanner;

class TestLireDuCLavier1{
public static void main(String[]args){
int ligne,colone;
System.out.println("veuillez entr‚ le nombre de ligne:");
Scanner lecture1=new Scanner(System.in);
ligne=lecture1.nextInt();
System.out.println("veuillez entr‚ le nombre de colone:");
Scanner lecture2=new Scanner(System.in);
colone=lecture2.nextInt();

}
}
merci de me rependre rapidement
ps: si vous avez une autre methode pr lire du clavier en java (int,float,char,String....) ça ne serai pas de refu
A voir également:

9 réponses

import java.util.Scanner;
public class Test1{
Scanner sc;
String ch;
public Test1(){
sc= new Scanner(System.in);
System.out.print("Entrez votre Nom et Prénom : ");
ch= sc.nextLine();
System.out.print("Entrez votre Age: " );
ch+=" " + sc.nextInt();
System.out.print(ch);
}
public static void main(String[] args){
new Test1();
}
}
4
tarek_dotzero Messages postés 817 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 12 avril 2022 120
20 mars 2008 à 19:54
Pour lire voici le code:
import java.io.*;

public class testLectureClavier
{
        public static void main(String args[])
        {
               try {
                   
                   BufferedReader in = new Bufferedreader(new InputStreamReader(System.in));
                   String chaine = in.readLine();
                }carch(Exception e){/* Traitement erreur */}
          }
}
1
does01 Messages postés 122 Date d'inscription lundi 24 décembre 2007 Statut Membre Dernière intervention 5 avril 2010 12
20 mars 2008 à 21:00
bsr tihout voici une autre méthode avec la classe io



import java.io.*;

class TestLireDuCLavier1{
public static void main(String[]args)throws IOException{
BufferedReader clavier=new BufferedReader(new InputStreamReader(System.in));


int ligne,colone;
System.out.println("veuillez entr‚ le nombre de ligne:");

ligne=Integer.parseInt(clavier.readLine()); // lecture des entier
System.out.println("veuillez entr‚ le nombre de colone:");

colone=Integer.parseInt(clavier.readLine()); // lecture des entier
}
}
1
tihout Messages postés 68 Date d'inscription vendredi 30 mars 2007 Statut Membre Dernière intervention 30 juillet 2012 42
20 mars 2008 à 22:33
resalut,merci beaucoup j l'ai deja fé passé du String au int avec Integer.parseInt(String);mais si l'utilisateur entre un caractére et non un entier ya un exception j'ai essayé de la traité avec un try catch mais j n'y arrive pas voici mon code
j'aimerai bien trouvé mon erreur :

import java.io.*;
import java.io.IOException;


public class PivotPartiel2{
public static void main(String[]args){
BufferedReader keyboard1=new BufferedReader(new InputStreamReader(System.in));
String line="";
System.out.println("veuillez entrez le nombre de ligne:");
try{
line=keyboard1.readLine();
}
catch(IOException e){
System.out.println("erreur");
}
try{
int ligne=Integer.parseInt(line);
}
catch(IOException e){ //l'erreur conserne cette ligne
System.out.println("vous avez entr‚ une chaine de caract‚re veuillee entr‚ un nombre");
}


BufferedReader keyboard2=new BufferedReader(new InputStreamReader(System.in));
String column="";
System.out.println("veuillez entrez le nombre de colone:");
try{
column=keyboard1.readLine();
}
catch(IOException e){
System.out.println("erreur");
}
try{
int colone=Integer.parseInt(column);
}
catch(IOException e){ //l'erreur conserne cette ligne
System.out.println("vous avez entr‚ une chaine de caract‚re veuillee entr‚ un nombre");
}


}
}

exception java.io.IOException is never thrown in body of crresponding try statement
catch(IOException e){

exception java.io.IOException is never thrown in body of crresponding try statement
catch(IOException e){
ben voila si vous pouvez m'aidé ça serai gentille
merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
21 mars 2008 à 10:05
salut,

prenons par exemple le cas
try
{
int ligne=Integer.parseInt(line);
}
catch(IOException e){ //l'erreur conserne cette ligne
System.out.println("vous avez entr‚ une chaine de caract‚re veuillee entr‚ un nombre");
}

apres on ne sait pas quoi faire.
Changeons par :
boolean ok = false;
while (!ok)
{
try
{
ok = true;
ligne=Integer.parseInt(line);
}
catch(IOException e)
{
ok = false;
System.out.println("vous avez entre‚ une chaine de caract‚res veuillez entrer‚ un nombre. ");
line="";
System.out.println("veuillez entrer le nombre de lignes:");
line=keyboard1.readLine();
}
}
--------
--------

ou quelque chose comme ca.

cordialement.

Dan.
0
tihout Messages postés 68 Date d'inscription vendredi 30 mars 2007 Statut Membre Dernière intervention 30 juillet 2012 42
21 mars 2008 à 12:34
Salut Dan j'ai essayé ce ke tu m'as dit tjrs la meme erreur ça n'a rien changer
merci de ton aide
aufet pour le premier code que j'ai donné avec la class Scanner quel qu'un a trouvé ce qui cloche?
bon courage A TOUS
0
Utilisateur anonyme
21 mars 2008 à 15:06
re bonjour,

J'ai trouve.

il faut remplacer catch(IOException e)

par catch (NumberFormatException e)

Cordialement.

Dan.
0
tihout Messages postés 68 Date d'inscription vendredi 30 mars 2007 Statut Membre Dernière intervention 30 juillet 2012 42
21 mars 2008 à 15:47
rerebonjour ,merci bcp Dan ça a marché
0
j'ai découvert une nouvelle astuce pour lire au clavier très simplement.
d'abord importer la classe java.io.Console;
ensuite dans le code créer une instance de la classe sur la console system car la classe console n'a pas de constructeur.

il faut utiliser Console con= System.console();
ensuite lire les Strings de la console avec con.readLine();

j'espère que celà va aider.

si besoin vous pouvez me demander une application complète avec cette méthode.
0