Bonsoir ,
Je m'initie à la lecture dans les fichiers avec la classe BufferedReader et InputStream. Dans un fichier texte je voudrai récupérer le premier caractère lu de la dernière ligne présente dans ce fichier
exemple :
Code txt : Sélectionner tout - Visualiser dans une fenêtre à part
1
23 Algernon Littlehorn
Je veux donc récupérer le chiffre 3 pour m'en servir comme identifiant incrémenté par la suite
Voici mon code Java
Code java : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 BufferedReader inFile = null; Character c = null; Integer id = null; try { InputStream inputStream = new FileInputStream("C:/bookEntry/personnes.txt"); inFile = Files.newBufferedReader(file, Charset.forName("UTF-8")); char[] cbuf = new char[inputStream.available()]; String currentLine; // Récupérer le premier caractère lu de la dernière ligne présente dans le fichier while ((currentLine = inFile.readLine()) != null) { c = currentLine.charAt(0); id = inFile.read(cbuf, 0, 1); } } catch (IOException ex) { Logger.getLogger(PersonneFactoryImpl.class.getName()).log(Level.SEVERE, null, ex); } finally { try { inFile.close(); } catch (IOException ex) { Logger.getLogger(PersonneFactoryImpl.class.getName()).log(Level.SEVERE, null, ex); } }
Je récupère bien le 1er caractère avecmais il est de type Character donc pas utilisable puisque mes identifiants sont des Integer.
Code java : Sélectionner tout - Visualiser dans une fenêtre à part currentLine.charAt(0);
Je me suis dit que je trouverai mon "bonheur" avec la méthode
Code java : Sélectionner tout - Visualiser dans une fenêtre à part public int read(char[] cbuf, int off, int len)
Merci d'avance.
Transact.
Partager