[Java] Créer une excpetion
Fermé
jebok
Messages postés
358
Date d'inscription
lundi 16 mai 2005
Statut
Membre
Dernière intervention
23 octobre 2007
-
25 juil. 2005 à 12:25
Utilisateur anonyme - 25 juil. 2005 à 13:31
Utilisateur anonyme - 25 juil. 2005 à 13:31
A voir également:
- [Java] Créer une excpetion
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel football - Télécharger - Jeux vidéo
- Créer un compte google - Guide
- Créer un compte gmail - Guide
- Comment créer un groupe whatsapp - Guide
2 réponses
Utilisateur anonyme
25 juil. 2005 à 13:31
25 juil. 2005 à 13:31
Tu trouveras ci-dessous un exemple (bête et méchant) de classe qui essaie d'ouvrir un fichier.
Si l'extension du fichier est différente de ".txt" ou ".log", une exception est levée (avec un message spécifique).
Si une ligne ne commence pas par "DATA#", la même exception est levée mauis avec un message différent.
Une fois que tout le fichier a été lu, une exception est levée si le fichier ne contient pas 100 lignes au minimum.
J'ai placé la classe d'excepion 'MauvaisFormatException' en classe interne, mais rien ne t'empêche de créer un classe à part entière (c'est même mieux).
Comme tu peux le voir, je stocke tous les messages que l'exception peut renvoyer dans des public static final String. Je passe le message qui convient en argument à l'exception
C'est la méthode getMessage() qu tu dois overrider (surcharger) dans ton exception
;-)
HackTrack
Si l'extension du fichier est différente de ".txt" ou ".log", une exception est levée (avec un message spécifique).
Si une ligne ne commence pas par "DATA#", la même exception est levée mauis avec un message différent.
Une fois que tout le fichier a été lu, une exception est levée si le fichier ne contient pas 100 lignes au minimum.
J'ai placé la classe d'excepion 'MauvaisFormatException' en classe interne, mais rien ne t'empêche de créer un classe à part entière (c'est même mieux).
Comme tu peux le voir, je stocke tous les messages que l'exception peut renvoyer dans des public static final String. Je passe le message qui convient en argument à l'exception
throw new MauvaisFormatException(MauvaisFormatException.BAD_FILE_FORMAT);
C'est la méthode getMessage() qu tu dois overrider (surcharger) dans ton exception
import java.io.BufferedReader; import java.io.File; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; /* * Created on Jul 25, 2005 * */ /** * @author Philippe Fery * */ public class ExceptionDemo { public ExceptionDemo() { super(); } public void openfile(String filePath) throws MauvaisFormatException, FileNotFoundException, IOException { File file = new File(filePath); int lineCounter = 0; if (file.getName().endsWith(".txt") || file.getName().endsWith(".log")) { BufferedReader reader = new BufferedReader(new FileReader(file)); String line = ""; while ((line = reader.readLine()) != null) { lineCounter++; if (line.startsWith("DATA#")) {} else { throw new MauvaisFormatException(MauvaisFormatException.BAD_FILE_FORMAT); } } if (lineCounter < 100) { throw new MauvaisFormatException(MauvaisFormatException.BAD_FILE_EXTENSION); } } else { throw new MauvaisFormatException(MauvaisFormatException.BAD_FILE_LENGTH); } } class MauvaisFormatException extends Exception { public static final String BAD_FILE_EXTENSION = "Extension de fichier non valide"; public static final String BAD_FILE_FORMAT = "Mauvais format de fichier"; public static final String BAD_FILE_LENGTH = "Mauvaise taille de fichier"; public String message; public MauvaisFormatException() { super(); this.message = BAD_FILE_FORMAT; } public MauvaisFormatException(String message) { super(message); this.message = message; } public String getMessage() { return message; } } public static void main(String[] args) { ExceptionDemo demo = new ExceptionDemo(); try { demo.openfile("c:/dir.txt"); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (MauvaisFormatException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
;-)
HackTrack
choubaka
Messages postés
39407
Date d'inscription
jeudi 4 avril 2002
Statut
Modérateur
Dernière intervention
9 décembre 2024
2 104
25 juil. 2005 à 13:15
25 juil. 2005 à 13:15