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

Format d'échange (XML, JSON...) Java Discussion :

rechercher attributs [DOM]


Sujet :

Format d'échange (XML, JSON...) Java

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 84
    Par défaut rechercher attributs
    Bonsoir à tous,

    J'ai un fichier xml de ce type:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <node0 identifiant="...">
      <node1 identifiant="...">
        <node2 identifiant="...">
          <node3 identifiant="...">
          </node3>
        </node2>
      </node1>
    </node0>
    chaque identifiant doit avoir une valeur unique. Quand je veux ajouter un node, je dois ajouter un identifiant (au hasard, c'est pas grave, mais unique). J'arrive à ajouter au hasard, il y a pas de problème, mais comment faire pour qu'il ne donne pas une valeur déjà attribuée?

    Merci d'avance de vos réponses..

  2. #2
    Membre éclairé
    Inscrit en
    Avril 2004
    Messages
    68
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 68
    Par défaut
    Ben au départ tu commences à 0, puis tu passes à 1, et ensuite à 2, et ainsi de suite.

    Mais ma réponse est tellement idiote que j'imagine que je n'ai pas très bien compris ta question ??

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    85
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2004
    Messages : 85
    Par défaut
    Je suppose que ton problème est que tu ne peux ou veux pas garder un historique des identifiants déjà utilisés... (surtout si tu relis et réédite le fichier)...

    Je ne sait pas si ça peut résoudre ton problème, mais jette un coup d'oeil à la classe Random de java.util

    Une solution possible serait d'utiliser un provider de clé qui utilise cette classe, un singleton de préférence...

    @+

  4. #4
    Membre Expert
    Avatar de viena
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    1 071
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Juillet 2002
    Messages : 1 071
    Par défaut
    il est bizarre ton fichier xml, mais si sa structure n'est pas un hasard, tu peux recuperer la valeur de l'attribut feuille (qui n'a pas de fils), apparemment, ce sera la valeur max de ton attribut.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 84
    Par défaut
    En fait, on m'a demandé de bosser directement sur le fichier xml. Les identifiants précédents étaient attribués aléatoirement, et quand j'ai demandé, on m'a dit que l'identifiant devait être unique, sinon il s'en moque s'il est attribué aléatoirement ou non.

    Citation Envoyé par tileffeleauzed
    Ben au départ tu commences à 0, puis tu passes à 1, et ensuite à 2, et ainsi de suite.
    J'y ai pensé mais le problème est le même. A un moment, il y aura un nombre attribué 2 fois...

    Citation Envoyé par ptitjack
    Je suppose que ton problème est que tu ne peux ou veux pas garder un historique des identifiants déjà utilisés... (surtout si tu relis et réédite le fichier)...
    Comme je travaille directement sur le fichier xml, je sais pas trop comment je pourrais faire un historique...et surtout récupérer tous les identifiants déjà existants....

    Citation Envoyé par viena
    si sa structure n'est pas un hasard, tu peux recuperer la valeur de l'attribut feuille (qui n'a pas de fils), apparemment, ce sera la valeur max de ton attribut.
    La valeur max de l'attribut, je l'ai mise dans la fonction qui me donne un nombre au hasard.

    Comme j'ai pas du être très clair (désolé, j'ai des problèmes d'expression), je vais faire avec un exemple. Imaginons que mon fichier est comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <node0 identifiant="45000"> 
      <node1 identifiant="3561"> 
        <node2 identifiant="786"> 
          <node3 identifiant="48951"> 
          </node3> 
        </node2> 
      </node1> 
    </node0>
    Que j'attribue aléatoirement l'identifiant ou en l'incrémentant, il y a un moment où je reattribuerai les valeurs 786, 3561, 45000, 48951. Et ça je veux éviter. Mais pour faire cela, je n'ai pas d'idée....

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    85
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2004
    Messages : 85
    Par défaut
    Utilise la méthode
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.currentTimeMillis()
    afin de récupérer la date en milliseconde (unique!) comme identifiant... C'est un moyen simple à mettre en oeuvre...

    Hope it will help.
    @+

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 84
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.currentTimeMillis()
    ça correspond à la date actuelle en milliseconde? Pas bête comme idée. Merci je vais voir ce que ça va me donner

    Merci à vous de m'avoir aidé en tout cas.

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 12/04/2010, 19h40
  2. recherche sur un attribut collection
    Par avereyl dans le forum Hibernate
    Réponses: 1
    Dernier message: 06/08/2007, 12h13
  3. [DOM] Recherche de mots dans un attribut
    Par Klimium dans le forum Bibliothèques et frameworks
    Réponses: 8
    Dernier message: 25/06/2007, 15h34
  4. Réponses: 4
    Dernier message: 19/06/2007, 11h41
  5. Réponses: 1
    Dernier message: 08/03/2007, 11h55

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