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 :

Problème String et split


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 60
    Par défaut Problème String et split
    Bonjour,
    Je souhaite découper en tableau des noms de fichiers sur le séparateur "." :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    File listSqlFiles[] = this.outputDir.listFiles( new FileFilterName (null,".sql") );
     
    for(int i=0;i<listSqlFiles.length;i++){
     
    String tab[]=((String)listSqlFiles[i].toString()).split(".");
     
    blablabla
     
    }
    Pourqoi cela ne marche t'il pas ? tab[] reste à vide, malgré que la condition sur le séparateur soit présente. D'ailleurs si je fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    String fichier="PRODUCT.SUBTYPE.TABLE.sql";
    String name[]=(fichier.toString()).split(".");
    System.out.println("Séparation: " +fichier.split("."));
    cela m'affiche "Séparation: [Ljava.lang.String;@10794d4".

    Merci.

  2. #2
    Membre Expert
    Avatar de ®om
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 815
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 815
    Par défaut
    Citation Envoyé par NicaeaCivitas
    cela m'affiche "Séparation: [Ljava.lang.String;@10794d4".
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.out.println("Séparation : " + Arrays.toString(fichier.split(".")));

  3. #3
    Membre éclairé
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Septembre 2006
    Messages
    572
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 572
    Par défaut
    le split prends une regexp et non une chaine, donc "." ça veut dire "n'importe quel caractère" et en gros ça retourne rien, puisque tout est splitté

    il faut utiliser la regexp "\\."

  4. #4
    Membre chevronné Avatar de schniouf
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2003
    Messages
    382
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2003
    Messages : 382
    Par défaut
    Citation Envoyé par NicaeaCivitas
    malgré que la condition sur le séparateur soit présente
    Rien à voir, mais ça me fait mal aux yeux. On dit :

    bien que la condition sur le séparateur soit présente

    ou alors

    malgré la présence de la condition sur le séparateur

    Malgré que, c'est pas français !

    Sinon, moi je mettrais le point entre crochets dans l'expression régulière :

  5. #5
    Membre chevronné Avatar de broumbroum
    Profil pro
    Inscrit en
    Août 2006
    Messages
    406
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 406
    Par défaut
    Citation Envoyé par NicaeaCivitas
    Bonjour,
    (...)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    String fichier="PRODUCT.SUBTYPE.TABLE.sql";
    String name[]=(fichier.toString()).split(".");
    System.out.println("Séparation: " +fichier.split("."));
    cela m'affiche "Séparation: [Ljava.lang.String;@10794d4".

    Merci.
    en fait tu essaies d'écrire le tableau retourné par String.split sans faire de boucle pour l'afficher.
    plutôt
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    String name[] = fichier.split(".");
    foreach(String split: name)
        System.out.println("séparation des chaines: " + split);

Discussions similaires

  1. Problème pour utiliser split avec "\"
    Par Nicolas_555 dans le forum Langage
    Réponses: 6
    Dernier message: 03/08/2006, 14h42
  2. Affichage page par page - problème STRING
    Par navis84 dans le forum Langage
    Réponses: 4
    Dernier message: 19/07/2006, 14h35
  3. problème sur un split
    Par Ickou dans le forum Langage
    Réponses: 5
    Dernier message: 13/01/2006, 19h22
  4. Problème String/Date
    Par plasticgoat dans le forum Collection et Stream
    Réponses: 9
    Dernier message: 20/12/2005, 10h56
  5. [String] fonction split
    Par tck-lt dans le forum Langage
    Réponses: 2
    Dernier message: 19/07/2005, 17h45

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