IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Entrée/Sortie Java Discussion :

reecriture fichier en conservant le meme nom


Sujet :

Entrée/Sortie Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2007
    Messages
    146
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 146
    Par défaut reecriture fichier en conservant le meme nom
    Bonjour à tous
    Je souhaites supprimer des lignes d un fichier texte
    pour cela j ouvre mon fichier et j ecris les lignes que je souhaite conserver dans un autre fichier
    Mais ce que j aimerais c est garder le meme nom de fichier pour eviter de garder le premier fichier
    je crois que ce n est pas possible

    sinon il faudrait que je detruis ce fichier mais la je ne vois pas comment faire


    je vous laisse le bout de code si vous avez des conseils merci


    Code : 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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    public void suppressionLigne()
    	{
    		try
    		{
    			for (int i=0;i<RecupResultat.nbWindows;i++)
    			{
     
    			BufferedReader reader = new BufferedReader(new FileReader("Temp\\ResPsinfo\\info"+RecupResultat.WindowsIP[i]+".txt"));
    			 //reecriture  afin de n avaoir que les lignes qui nous interesse
    	        PrintWriter writer=new PrintWriter (new BufferedWriter(new FileWriter("Temp\\ResPsinfo\\recupInfo"+RecupResultat.WindowsIP[i]+".txt")));
     
    	        //suppression des lignes qu on en veut plus
    	        try {
    	        	int nbLines = 0;
    	        	String line = null;
    	        		while ((line = reader.readLine()) != null) 
    	        		{
    	        			++nbLines;
    	        			if ((nbLines > 7 && nbLines<12) || (nbLines>17 && nbLines<23)) //on n ecrit pas les 7 premieres lignes
    	        			{
    	        				writer.println(line);
     
    	        			}
    	        		}
     
    	        	} 
    	        finally 
    	        {
    	          reader.close();
    	          writer.close();
    	        }
    			}
    		}
    	        catch(IOException e)
    	        {
    	        e.printStackTrace(); 
    			System.out.println("erreur recuperation resultat (info)");
    	        }
     
     
     
    	}

  2. #2
    Membre émérite
    Profil pro
    Développeur Back-End
    Inscrit en
    Avril 2003
    Messages
    782
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Back-End

    Informations forums :
    Inscription : Avril 2003
    Messages : 782
    Par défaut
    Bonjour,

    le principe est simple :

    1 - je lis le fichier A et ecrit dans un fichier B (File.createTempFile())
    2 - puis j'efface le ficher A et renomme en fichier B en A.

  3. #3
    Membre Expert
    Profil pro
    Fabrication GED
    Inscrit en
    Octobre 2005
    Messages
    1 405
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Fabrication GED

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 405
    Par défaut
    Tu lis le fichier source ligne par ligne et tu recopies les lignes qui t'intéressent dans le fichier cible.
    Ensuite il te reste à faire cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    File fSource=new File("...");
    File fCible=new File("...");
    ... // Le code pour supprimer les lignes
    if(!fSource.delete)throw new IOException("Impossible d'écraser le fichier (suppression).");
    if(!fCible.renameTo(fSource))throw new IOException("Impossible d'écraser le fichier (renommage).");

  4. #4
    Membre confirmé
    Inscrit en
    Janvier 2007
    Messages
    146
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 146
    Par défaut
    ouais j avais pas bien saisi le coup du new file sur la doc c est bon ça fonctionne
    merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 6
    Dernier message: 29/01/2012, 22h21
  2. Réponses: 0
    Dernier message: 15/12/2011, 23h33
  3. Réponses: 4
    Dernier message: 02/08/2010, 11h20
  4. Réponses: 0
    Dernier message: 15/11/2009, 17h31
  5. creation de fichier de meme nom mais de casse differente
    Par kayenne77 dans le forum Entrée/Sortie
    Réponses: 5
    Dernier message: 20/08/2009, 13h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo