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

Java Discussion :

Supprimer totalement une ligne fichier txt


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2021
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2021
    Messages : 4
    Par défaut Supprimer totalement une ligne fichier txt
    Bonjour.
    Dans mon programme j'ai besoin de supprimer une ligne dans un fichier txt. Pour faire cela j'ai utilisé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    fileContext = fileContext.replaceAll(LigneaSupprimmer ,"");
    Mais ça ne me donne pas le résultat que je veux. Ce programme ne supprime pas la ligne mais supprime son contenu.
    ce qui donne(dans le fichier texte) :

    18181111188
    73496438496

    42611181649
    17848484646
    17358843466

    Mais j'aimerais que le fichier texte me donne :

    18181111188
    73496438496
    42611181649
    17848484646
    17358843466

    c'est-à-dire que je veux supprimer la ligne et faire reculer d'une ligne toutes les lignes suivantes.
    Si quelqu'un a une idée ça m'aiderait beaucoup.
    Merci d'avance.

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Hello,

    la solution simple c'est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    replace(LigneaSupprimmer + '\n',"");
    ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    replace(LigneaSupprimmer + "\r\n","");
    ça dépend des conventions de fin de ligne de ton fichier.

    Ce qui du coup nous amène à penser qu'il vaut mieux utiliser les fonctionnalités qui marchent avec toutes les conventions.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Path path = Paths.get(lePathEtNomDuFichier);
    List<String> lignes = Files.readAllLines(path);
    lignes.removeIf(LigneaSupprimmer::equals);
    Files.write(path, lignes);
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2021
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2021
    Messages : 4
    Par défaut
    Merci beaucoup ça fonctionne parfaitement avec la deuxième méthode.

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

Discussions similaires

  1. [XL-2010] Supprimer une ligne fichier txt depuis vba
    Par RomBon dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 15/11/2018, 15h57
  2. Réponses: 2
    Dernier message: 06/06/2008, 16h49
  3. Sauter une ligne + fichier txt
    Par acryline dans le forum GTK+ avec C & C++
    Réponses: 3
    Dernier message: 29/01/2008, 22h32
  4. Réponses: 2
    Dernier message: 28/09/2006, 10h58
  5. Effacer dernière ligne fichier txt
    Par soulryo dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 25/09/2006, 22h05

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