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

avec Java Discussion :

Supprimer une ligne lorsqu'on trouve un caractère


Sujet :

avec Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mai 2014
    Messages : 180
    Par défaut Supprimer une ligne lorsqu'on trouve un caractère
    Hello tout le monde,
    Alors j'aimerai supprimer toute les lignes de mon fichier contenant un "$".

    Je m'explique j'ai mon fichier :
    #!/bin/csh -xv
    #BSUB -J calmod_POGO_2CU fichie.txt
    #BSUB -o calmod_POGO_2CU.o%J
    #BSUB -L /bin/csh

    umask 002

    #----------------------------------------------------------------------
    set dir_listing = jdfgjkdfnbjkdfnbjnfdbndfjbndfbndfkb
    jnfjkg
    $gdfgdfg
    dfgdfgdfg74654654fdg
    fdgdfg
    fgdf
    set toto = tata
    fgfg
    fg;hmfh
    set toto = tutu2
    dfdsfgdfg
    set nono = ueueue777
    set khjkhjkhkj 8787687657
    titi = tutu
    set a = titi
    set b = $toto
    set c = 7 + $toto
    set d = $toto + 9
    set e = $nono + $toto
    et mon code :
    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
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
     
    import java.io.BufferedReader;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.util.regex.Matcher;
    import java.util.regex.Pattern;
     
     
     
    		public class RecupCleValeurTest {
     
    			public static void main(String[] args) throws FileNotFoundException {
     
    				String fichier = "C:\\Users\\ksmaili\\workspace\\fichiertxtP2CSH.txt";
    				Classement cl = new Classement();
    				// lit le fichier ligne par ligne 
    				try{
    					// lire un fichier
    					InputStream ips=new FileInputStream(fichier);       
    					InputStreamReader ipsr=new InputStreamReader(ips);
    					BufferedReader br=new BufferedReader(ipsr);
    					// lire ligne par ligne 
    					String ligne;
    					while ((ligne=br.readLine())!=null){
    						//System.out.println(ligne);
     
    						if(ligne.matches("^set.*=.*")){
    						    //System.out.println("On récupère : " + ligne);
    						}
    						 Pattern p=Pattern.compile("^set(.*)=(.*)");
    						 Matcher m=p.matcher(ligne);
    						 while(m.find()) {
    							//System.out.println(m.group(1)); // affiche les clés 
    							//System.out.println(m.group(2)); // affiche les valeurs des clés
     
     
    						// Maintenant je vérifie si la clé est déjà présente dans la map
    						boolean cle = cl.verif(m.group(1));
    						boolean cle2 = cl.verif(m.group(2));
     
    						// Si elle n'est pas présente, on l'ajoute dans la map 
    						 if (cle != true && cle2 != true){
    							cl.add(m.group(1), m.group(2));
    							 //System.out.println(cle); 
    						}
     
    						 }
    					}
     
    					cl.afficher();
     
     
     
    					br.close(); // On ferme le flux
    				}		
    				catch (Exception e){
    					System.out.println(e.toString());
    				}
     
     
    		}
    		}
    mon code m'affiche toutes les clé et valeurs des lignes ayant la forme set ... = ... de mon fichier c'est à dire :
    dir_listing = jdfgjkdfnbjkdfnbjnfdbndfjbndfbndfkb
    toto = tata
    a = titi
    d = $toto + 9
    e = $nono + $toto
    nono = ueueue777
    c = 7 + $toto
    b = $toto

    le problème c'est que j'aimerai que lorsque mon programme détecte un "$..." il supprime la ligne en gros il ne me l'affiche pas dans ma console.
    par exemple pour :
    set b = $toto => il me supprime la ligne
    set c = 7 + $toto => il m'affiche c = 7
    set d = $toto + 9 => il m'affiche d = 9
    set e = $nono + $toto => il me supprime la ligne

    Avez vous une petite idée

    Thinks

    ps : je pense utilisé les expressions régulières comme dans mon posts poser récemment

  2. #2
    Membre Expert Avatar de jeffray03
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2008
    Messages
    1 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 501
    Par défaut
    salut,
    il faudra utiliser un

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     !tonString.contains("$")
    eric

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mai 2014
    Messages : 180
    Par défaut
    Citation Envoyé par jeffray03 Voir le message
    salut,
    il faudra utiliser un

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     !tonString.contains("$")
    eric
    Salut

    je créer une instance de ma classe DetecteSymboleTest et je fais appel a la methode contains?

    Car c'est ce que j'ai fais mais je ne trouve pas le contains !!

  4. #4
    Membre Expert
    Avatar de eulbobo
    Homme Profil pro
    Développeur Java
    Inscrit en
    Novembre 2003
    Messages
    786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Novembre 2003
    Messages : 786
    Par défaut
    contains est une méthode de la classe String (entre autres, mais c'est celle là qui nous intéresse ici)

  5. #5
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mai 2014
    Messages : 180
    Par défaut
    D'accord mais dans quel but contains va m'aider ?
    en faite il va pas prendre les lignes ou il y a "$"?
    j'ai vu que la méthode contains renvoyer un boolean mais je voit pas en quoi sa m'arrangerai ici ...

  6. #6
    Membre Expert
    Avatar de eulbobo
    Homme Profil pro
    Développeur Java
    Inscrit en
    Novembre 2003
    Messages
    786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Novembre 2003
    Messages : 786
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    		while ((ligne=br.readLine())!=null){
    			if(!ligne.contains("$")){
    				// la suite du traitement
    Je te donne la solution, je te laisse trouver où la mettre

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 30/04/2015, 11h06
  2. [JTable] Supprimer une ligne d'un jtable
    Par Orionmel dans le forum Composants
    Réponses: 5
    Dernier message: 05/11/2004, 22h29
  3. [C#] Comment supprimer une ligne dans DataGrid ?
    Par BAUDIER dans le forum ASP.NET
    Réponses: 2
    Dernier message: 20/07/2004, 16h03
  4. supprimer une ligne avec cle etrangere
    Par BaBas dans le forum Langage SQL
    Réponses: 4
    Dernier message: 15/07/2003, 11h24
  5. Supprimer une ligne dans un fichier
    Par sbeu dans le forum Langage
    Réponses: 3
    Dernier message: 13/05/2003, 10h30

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