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 :

Tronquer une String


Sujet :

avec Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Février 2009
    Messages
    265
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 265
    Points : 97
    Points
    97
    Par défaut Tronquer une String
    Bonjour,

    Voici mon pb:
    J'ai une string dont les champs sont séparés par des espaces et je souhaite ne prendre que le premier champ de cette string....
    Est-ce qu'il existe en java une fonction de déconcaténation où on dit de ne prendre que le premier mot avant espace ?????
    Merci pour vos futures réponses
    NFHnv

  2. #2
    Membre chevronné
    Avatar de Deadpool
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 312
    Points : 2 011
    Points
    2 011
    Par défaut
    Bonjour,

    Regarde la méthode split de la classe String.

    Elle te permettra de séparer tes différents champs en renvoyant un tableau où chaque champ sera dans une case de ce tableau.

    Dès lors, il te suffira de récupéré la première case de ton tableau pour avoir ton premier champ.

    -"Tout ça me paraît très mal organisé. Je veux déposer une réclamation. Je paye mes impôts, après tout!"
    -"JE SUIS LA MORT, PAS LES IMPÔTS! MOI, JE N'ARRIVE QU'UNE FOIS".

    Pieds d'argile (1996), Terry Pratchett 1948 - 2015
    (trad. Patrick Couton)

  3. #3
    Modérateur
    Avatar de wax78
    Homme Profil pro
    Chef programmeur
    Inscrit en
    Août 2006
    Messages
    4 074
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chef programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 074
    Points : 7 978
    Points
    7 978
    Par défaut
    Sinon tu peux si tu ne dois récupérer que le premier champ :

    1) Chercher après le premier espace avec la fonction "indexOf".
    2) Utiliser l'index retourné pour couper la chaine a l'aide "susbstring"
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Février 2009
    Messages
    265
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 265
    Points : 97
    Points
    97
    Par défaut
    Voici ce que j'ai écris :row5.CN.subString(0,row5.CN.indexOf(" ")) et ça met une erreur comme quoi subString (int, int) ne peut pas fonctionner ...
    Une idée ???
    Merci

  5. #5
    Membre à l'essai
    Inscrit en
    Décembre 2012
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Décembre 2012
    Messages : 16
    Points : 15
    Points
    15
    Par défaut
    est-ce que tu a fait un system.out de row5.CN.indexOf(" ") ?
    Je te parie que cela te retourne null d'ou l'erreur.

    Donc, regarde deja ce que ca retourne vu que substring attend (int,int)

    Peux-tu envoyer une copie de ton code stp, cela sera plus pratique pour t'aider (I'm not a mind reader )

  6. #6
    Membre chevronné
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 348
    Points : 1 787
    Points
    1 787
    Par défaut
    Ca serait bien de copier ton code exact (je rappelle qu'en Java la casse est importante) et le message d'erreur exact en nous indiquant s'il s'agit d'une erreur de compilation ou d'exécution.

  7. #7
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2008
    Messages
    328
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Mexique

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2008
    Messages : 328
    Points : 459
    Points
    459
    Par défaut
    Salut,

    substring pas subString !

    Et il faudrait éventuellement verifier que l'indice fin est > -1

    Cordialement,

    Dan

  8. #8
    Modérateur
    Avatar de wax78
    Homme Profil pro
    Chef programmeur
    Inscrit en
    Août 2006
    Messages
    4 074
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chef programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 074
    Points : 7 978
    Points
    7 978
    Par défaut
    En gros :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    String in = "turlututu chapeau pointu";
    int idx=in.indexOf(' ');
    if (idx!=-1)
      System.err.println("["+in.substring(0, idx)+"]");
    else
      System.err.println("Pas de caractère espace");
    ou comme deadpool le mentionne avec split :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    String[] splitted = in.split(" ");
    if (splitted.length>0)
      System.err.printf("[%s]",splitted[0]);
    else
      System.err.println("Pas de caractère espace");
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  9. #9
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2008
    Messages
    328
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Mexique

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2008
    Messages : 328
    Points : 459
    Points
    459
    Par défaut
    Citation Envoyé par NFHnv Voir le message
    Voici ce que j'ai écris :row5.CN.subString(0,row5.CN.indexOf(" ")) et ça met une erreur comme quoi subString (int, int) ne peut pas fonctionner ...
    Une idée ???
    Merci
    Cette erreur est due au fait que subString est inconnu mais pas le résultat de "indexOf". Utiliser substring ...

    Dan

Discussions similaires

  1. [DOM] parser une String pour en faire un document XML
    Par Fladnag dans le forum Format d'échange (XML, JSON...)
    Réponses: 9
    Dernier message: 29/03/2004, 11h04
  2. [Débutant][JSP] Ajout des caractères à une String...
    Par Henkyl dans le forum Servlets/JSP
    Réponses: 5
    Dernier message: 04/03/2004, 16h30
  3. tronquer une donnée
    Par closo dans le forum XMLRAD
    Réponses: 2
    Dernier message: 24/02/2004, 15h42
  4. [Syntaxe] mettre des ' dans une string ?
    Par souch dans le forum Débuter
    Réponses: 4
    Dernier message: 14/08/2003, 16h26
  5. Réponses: 6
    Dernier message: 24/07/2003, 12h39

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