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

Langage Java Discussion :

java String[] emplacements vides.


Sujet :

Langage Java

  1. #1
    Membre habitué
    Homme Profil pro
    Développeur Java
    Inscrit en
    Septembre 2016
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2016
    Messages : 46
    Points : 144
    Points
    144
    Par défaut java String[] emplacements vides.
    Bonjour voilà mon nouveau problème,

    j'ai un fichier text en entrée de mon programme, celui-ci comporte plusieurs lignes de cette forme :

    12/09/16|nom||prenom|||||x

    pour chaque ligne de ce fichier je fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String[] contentLine = line.split("\\|")
    puis je boucle dessus pour remplir une arrayList<String> j'obtiens alors :

    [12/09/16, nom, ,prenom, , , , ,x]


    Jusque là tout est normale c'est juste pour vous montrez le contexte voilà le vrai problème :

    Dans ce fichier texte d'entrée je peux avoir ceci :

    12/09/16|nom||prenom|||||

    comme vous pouvez le voir les 5 derniers emplacements sont vides, en faisant mon arrayList j'obtiens ceci :

    [12/09/16, nom, ,prénom]

    alors que j'aimerais avoir :

    [12/09/16, nom, ,prénom, , , , , ]

    j'ai regardé un peu la doc cette fois j'ai rien trouvé de concluant et si je suis passé à coté de qlq chose je m'en excuse d'avance .

  2. #2
    Membre habitué
    Homme Profil pro
    Développeur Java
    Inscrit en
    Septembre 2016
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2016
    Messages : 46
    Points : 144
    Points
    144
    Par défaut tant que ça marche
    J'ai finalement trouvé quelque chose c'est tordu mais ça marche ^^.

    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
     
    while ((line = in.readLine()) != null)
    {
            line = line.concat(".");
    	String[] contentLine = line.split("\\|");
     
     
    	ArrayList<String> test = new ArrayList<String>();
     
    	for (String string : contentLine)
    	{
    		if (string.contains("."))
    		{
    			string = string.substring(0, string.length() -1);
    		}
    		test.add(string);
    	}
    	contentLineList.add(test);
    }

  3. #3
    Modérateur

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

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Hello,

    il suffisait de faire

    Enlever les chaînes vides à la fin s'il y en a, est une fonctionnalité de split() qui était considérée utile (bien que pas par moi.)
    Tu n'es pas obligé de l'accepter, si tu ajoutes le paramètre -1 cette fonctionnalité s'en va, et tu as à nouveau tes chaînes vides.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  4. #4
    Membre habitué
    Homme Profil pro
    Développeur Java
    Inscrit en
    Septembre 2016
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2016
    Messages : 46
    Points : 144
    Points
    144
    Par défaut merci ;)
    Citation Envoyé par thelvin Voir le message
    Hello,

    il suffisait de faire

    Enlever les chaînes vides à la fin s'il y en a, est une fonctionnalité de split() qui était considérée utile (bien que pas par moi.)
    Tu n'es pas obligé de l'accepter, si tu ajoutes le paramètre -1 cette fonctionnalité s'en va, et tu as à nouveau tes chaînes vides.

    Merci beaucoup en effet ça simplifie les choses et comme je m'en doutais j'ai dû louper ça dans la doc .

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

Discussions similaires

  1. java string séparateur
    Par ____22 dans le forum Langage
    Réponses: 2
    Dernier message: 18/12/2007, 11h11
  2. MySql, java, String, probleme d'accent.
    Par pigpen dans le forum JDBC
    Réponses: 26
    Dernier message: 26/05/2007, 14h01
  3. Java - Strings et JTextArea
    Par TheReturnOfMuton dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 27/07/2006, 15h48
  4. Trouver un emplacement vide.
    Par méphistopheles dans le forum Algorithmes et structures de données
    Réponses: 26
    Dernier message: 31/03/2006, 21h59
  5. [Java/String] Completer une chaine avec un caractere
    Par shaun_the_sheep dans le forum Langage
    Réponses: 4
    Dernier message: 31/05/2005, 09h01

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