Rechercher : dans
Par :

Lire du clavier en java

Dernière réponse le 21 mar 2008 à 15:47:04 tihout, le 20 mar 2008 à 18:20:26 
 Signaler ce message aux modérateurs

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

Configuration: Windows XP
Internet Explorer 7.0

Meilleures réponses pour « lire du clavier en java » dans :
Comment lire un fichier ligne par ligne VoirComment lire un fichier ligne par ligne Préambule Boucle while Syntaxe Exemple Astuces Bonus Boucle for Syntaxe Préambule Une des erreurs les plus communes dans l'apprentissage des scripts "bash" sous GNU/LInux pour lire un fichier...

1

tarek_dotzero, le 20 mar 2008 à 19:54:32
  • +1

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 */}
          }
}

Répondre à tarek_dotzero

2

does01, le 20 mar 2008 à 21:00:23

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
}
}

Répondre à does01

3

tihout, le 20 mar 2008 à 22:33:43

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

Répondre à tihout

4

danimo, le 21 mar 2008 à 10:05:04

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.

Répondre à danimo

5

tihout, le 21 mar 2008 à 12:34:42

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

Répondre à tihout

6

danimo, le 21 mar 2008 à 15:06:46

Re bonjour,

J'ai trouve.

il faut remplacer catch(IOException e)

par catch (NumberFormatException e)

Cordialement.

Dan.

Répondre à danimo

7

 tihout, le 21 mar 2008 à 15:47:04

Rerebonjour ,merci bcp Dan ça a marché

Répondre à tihout