Creer et lire un fichier texte java [Résolu]

Signaler
Messages postés
60
Date d'inscription
mercredi 11 septembre 2013
Statut
Membre
Dernière intervention
19 octobre 2014
-
zaynoubagl
Messages postés
60
Date d'inscription
mercredi 11 septembre 2013
Statut
Membre
Dernière intervention
19 octobre 2014
-
Bonjour,
comment je peut créer un fichier texte en java et lire le contenus de ce fichier

7 réponses

Messages postés
14742
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
17 février 2020
91
Hello,

FileInputStream pour la lecture
FileOutputStream pour l'écriture
zaynoubagl
Messages postés
60
Date d'inscription
mercredi 11 septembre 2013
Statut
Membre
Dernière intervention
19 octobre 2014

ça marche avec la classe Filewriter merci
zaynoubagl
Messages postés
60
Date d'inscription
mercredi 11 septembre 2013
Statut
Membre
Dernière intervention
19 octobre 2014

est-ce-que je put creer un seul fois sur un fichier texte
quelle est l'instruction si je peut créer merci pour ton aide
Messages postés
14742
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
17 février 2020
91
Si tu veux réécrire à la suite, dans un fichier existant, il faut mettre le booléen à
true 
dans le constructeur de FileWriter
zaynoubagl
Messages postés
60
Date d'inscription
mercredi 11 septembre 2013
Statut
Membre
Dernière intervention
19 octobre 2014

non je voulais écraser le contenu et créer le nouvel contenu voici le code de l'action
private void annulerActionPerformed(java.awt.event.ActionEvent evt) {                                        
         
  
String s = adr_mac.getText(); 
String u = code_mac.getText();
MD5 m = MD5.getInstance();
String t= m.hacher(s).substring(25); 
         File file = new File("code.txt");
      
        //FileWriter second argument is for append if its true than FileWritter will
        //write bytes at the end of File (append) rather than beginning of file
        FileWriter fileWriter = null;
    try {
        fileWriter = new FileWriter(file,true);
    } catch (IOException ex) {
  
    }
      
        //Use BufferedWriter instead of FileWriter for better performance
        BufferedWriter bufferFileWriter  = new BufferedWriter(fileWriter);
    try {
        Writer append = fileWriter.append(m.hacher(s));
    } catch (IOException ex) {
     
    }
    try {      
        //Don't forget to close Streams or Reader to free FileDescriptor associated with it
        bufferFileWriter.close();
    } catch (IOException ex) {
        
    }
et le code de la classe fichier
package macadresse;

import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.ObjectOutputStream;
import java.io.Serializable;

/**
 *
 * @author NewMedia
 */
public class fichier  implements Serializable {
    

   public static void main(String args[])throws IOException{

      File file = new File("code.txt");
      // creates the file
      file.createNewFile();
      // creates a FileWriter Object
      FileWriter writer = new FileWriter(file,true); 
      // Writes the content to the file
      writer.write(""); 
      writer.flush();
      writer.close();

      //Creates a FileReader Object
      FileReader fr = new FileReader(file); 
      char [] a = new char[50];
      fr.read(a); // reads the content to the array
      for(char c : a)
          System.out.print(c); //prints the characters one by one
      fr.close();
   }



}
BunoCS
Messages postés
14742
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
17 février 2020
91
Dans ce cas là, tu mets le booléen à
false


NB: merci d'avoir utiliser les balises code ;)
zaynoubagl
Messages postés
60
Date d'inscription
mercredi 11 septembre 2013
Statut
Membre
Dernière intervention
19 octobre 2014

if(u.equals(t)){
    
           dispose();
              
     
    
       }
       else{
            JOptionPane.showMessageDialog(null, "Code d'accée incorrect !","Essayer !",JOptionPane.ERROR_MESSAGE);  }
       
    }                                       
Messages postés
60
Date d'inscription
mercredi 11 septembre 2013
Statut
Membre
Dernière intervention
19 octobre 2014

merci pour ton aide
une autre question comment faire pour faire la vérification a partir de code insérer dans le fichier
Messages postés
14742
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
17 février 2020
91
Quel genre de vérification?
zaynoubagl
Messages postés
60
Date d'inscription
mercredi 11 septembre 2013
Statut
Membre
Dernière intervention
19 octobre 2014

je voulais que une fois le code insérer dans le fichier code.txt la prochaine fois la vérification de 2 chaînes de caractère
if(u.equals(t)){
    
           dispose();
              
     //ici je voulais faire une fonction qui verifier la chaine t inserrer dans le fichier avec u 
    
       }
       else{
            JOptionPane.showMessageDialog(null, "Code d'accée incorrect !","Essayer !",JOptionPane.ERROR_MESSAGE);  }
       
    }
BunoCS
Messages postés
14742
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
17 février 2020
91
La prochaine fois, il te faudra d'abord lire le fichier avec FileReader et tester la string que tu auras lue.
zaynoubagl
Messages postés
60
Date d'inscription
mercredi 11 septembre 2013
Statut
Membre
Dernière intervention
19 octobre 2014

ok
j'essay
Messages postés
60
Date d'inscription
mercredi 11 septembre 2013
Statut
Membre
Dernière intervention
19 octobre 2014

j'essay avec ça mais ça marche pas
 try { 
        FileReader fr = new FileReader(file);
      
        fr.read(String t);
    } catch (FileNotFoundException ex) {
       
    }
Messages postés
14742
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
17 février 2020
91
A tester (je n'ai rien sous la main):

try{
    BufferedReader buff = new BufferedReader(new FileReader(file));

    String line = buff.readLine();
    
    // fais ton test ici

} catch (Exception e) {
    // Exception à traiter
}

zaynoubagl
Messages postés
60
Date d'inscription
mercredi 11 septembre 2013
Statut
Membre
Dernière intervention
19 octobre 2014

if(u.equals(buff.readLine(t))){
   
           dispose();

ca marche pas
BunoCS
Messages postés
14742
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
17 février 2020
91
Essaie de copier correctement quand même... ;)
C'est quoi ce "t" qui traine dans
readLine()
?
zaynoubagl
Messages postés
60
Date d'inscription
mercredi 11 septembre 2013
Statut
Membre
Dernière intervention
19 octobre 2014

j'essay avec ca mais elle affiche le message d'erreur
 try { 
       BufferedReader buff = new BufferedReader(new FileReader(file));

    String line = buff.readLine();
     if(u== buff.readLine()){
   
           dispose();}
       else{
            JOptionPane.showMessageDialog(null, "Code d'accée incorrect !","Essayer !",JOptionPane.ERROR_MESSAGE);  }
       
           
           
    } catch (FileNotFoundException ex) {
       
    }   catch (IOException ex) {
            
        }
       

je ne trouve pas ou le probleme
zaynoubagl
Messages postés
60
Date d'inscription
mercredi 11 septembre 2013
Statut
Membre
Dernière intervention
19 octobre 2014

je trouve le probleme sa marche avec ça
try { 
       BufferedReader buff = new BufferedReader(new FileReader(file));

    String line = buff.readLine();
        if(u.equals(line)){
   
           dispose();
       }
       else{
            JOptionPane.showMessageDialog(null, "Code d'accée incorrect !","Essayer !",JOptionPane.ERROR_MESSAGE);  }
       
    
    } catch (FileNotFoundException ex) {
       
    }   catch (IOException ex) {
            
        }
              
merci pour ton aide merci bcp
Messages postés
14742
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
17 février 2020
91
Dans Eclipse (j'imagine que tu utilises Eclipse mais les autres IDE, c'est pareil), tu as un mode de débogage et la possibilité de mettre des points d'arrêt. ça te permet de stopper l'exécution et de voir l'état de tes variables.
Je ne sais pas comment tu remplis ton fichier, mais il te faut peut-être boucler sur la lecture
zaynoubagl
Messages postés
60
Date d'inscription
mercredi 11 septembre 2013
Statut
Membre
Dernière intervention
19 octobre 2014

non j'utilise le netbeans merci pour ton aide