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

Java Discussion :

Exception de type ArrayIndexOutOfBoundException


Sujet :

Java

  1. #1
    Membre confirmé Avatar de tus01
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    191
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 191
    Par défaut Exception de type ArrayIndexOutOfBoundException
    Bonjour,

    Je rencontre une exception de type ArrayIndexOutOfBoundException sur le code suivant, à la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xElement.setY(letters[i]);
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    public void wdDoInit()
      {
        //@@begin wdDoInit()
       String[] letters = new String []
       {"A", "B", "C", "D"};
     
    //Create context elements for the node "X"
       List nodeElements = new ArrayList();
       for (int i =  0; i <letters.length; ++i)
       {
          IPrivateTestView.IXElement xElement = wdContext.createXElement();
          xElement.setY(letters[i]);
          nodeElements.add(xElement);
       }
    En testant mon code, j'ai bien mon tableau de String letters = 4. Je ne vois donc pas pourquoi mon code rentre en erreur.

    Merci d'avance pour votre aide.

    Thibault

  2. #2
    Membre confirmé Avatar de tus01
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    191
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 191
    Par défaut
    J'ai testé avec le code suivant et apparemment cela fonctionne:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    public void wdDoInit()
      {
        //@@begin wdDoInit()
       String[] letters = new String []
       {"A", "B", "C", "D"};
     
    //Create context elements for the node "X"
       List nodeElements = new ArrayList();
       for (int i =  0; i <letters.length - 1; ++i)
       {
          IPrivateTestView.IXElement xElement = wdContext.createXElement();
          xElement.setY(letters[i]);
          nodeElements.add(xElement);
       }

  3. #3
    Candidat au Club
    Inscrit en
    Avril 2010
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 4
    Par défaut pb ArrayIndexOutOfBoundsAxception
    bonjour,

    Je suis en train de réaliser un projet en JAVA consistant en la conversion d'un fichier csv en fichier xml. le fichier étant particulier je ne peux pas utiliser les outils du commerce.
    Dans mon fichier csv j'ai une redondance d'information et il faut que je l'évite sur mon fichier xml.
    J'ai eu donc l'idée de créer une arrayList pour pouvoit comparer les valeurs. Si la valeur est la même je ne la mets pas dans le fichier xml sinon je la met.
    Mais lorsque j'ajoute dans ma liste à un moment il me met : Exception ArrayIndexOutOfBoundsException. à quoi cela peut-il être du ? car ça ne me bloque pas l'execution du programme.
    J'avoue que je suis perdue.
    Si vous pouviez m'expliquer d'ou peut venir l'erreur ça se sympa.

    Merci d'avance

    Backa.

  4. #4
    Membre confirmé Avatar de tus01
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    191
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 191
    Par défaut
    1 tu poste un message sur mon post alors que tu pourrais en faire un pour ton problème à toi.
    2 tu ne mets même pas de code source alors comment veux tu que l'on t'aide ?

  5. #5
    Candidat au Club
    Inscrit en
    Avril 2010
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 4
    Par défaut Désolée
    Je pensais que le pb était assez proche et qu'il n'était pas nécessaire de multiplier les post.
    Mais bon je vais créer le mien t'inquiète et mes sources je n'ai pas les autorisations pour les diffuser.
    Encore désolée pour le désagrément

  6. #6
    Membre confirmé Avatar de tus01
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    191
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 191
    Par défaut
    La réponse était dans le for i++ au lieu de ++i et plus d'Exception

  7. #7
    Membre confirmé Avatar de tus01
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    191
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 191
    Par défaut
    Citation Envoyé par backa Voir le message
    Je pensais que le pb était assez proche et qu'il n'était pas nécessaire de multiplier les post.
    Mais bon je vais créer le mien t'inquiète et mes sources je n'ai pas les autorisations pour les diffuser.
    Encore désolée pour le désagrément
    Il y a une différence entre diffuser l'intégralité de ton code source et diffuser le bout de code qui te retourne une erreur. Tu décris ton problème trop brièvement pour que l'on puisse t'aider. C'est juste un conseil pour que tu n'attendes pas 100000 ans une réponse qui t'aide.

  8. #8
    Candidat au Club
    Inscrit en
    Avril 2010
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 4
    Par défaut
    Ok merci c'est gentil. Donc voila un bout de 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
     
     String[] splitted = new String[65]; 
    while( (strLine = br.readLine()) != null){
        	    cmptLine++;
    ArrayList<String> connecteur = new ArrayList<String>(); 
    			if(cmptLine>1){
    			splitted = strLine.split("\\;");
     
    			try{
    			Element connector = new Element("connector");
    			equipement.addContent(connector); 
    			Attribute Num = new Attribute("Num",Integer.toString(cmptLine-1));
    			connector.setAttribute(Num);  
     
    			Element connectorName = new Element ("connector_name");
    			connector.addContent(connectorName);
    			connectorName.setText(splitted[3]);
     
    			connecteur.add(splitted[3]);	
    			System.out.println(connecteur);
    et c'est lors de l'affichage de l'arrayList qu'il m'envoie
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    [J2]
    [J2]
    [J2]
    [J1]
    [J1]
    [J1]
    [J1]
    Exception ArrayIndexOutOfBoundsException
    [J2]
    [J1]
    [J1]
    [J2]
    As tu une idée de la cause ?

  9. #9
    Membre confirmé Avatar de tus01
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    191
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 191
    Par défaut
    Les exceptions de type ArrayIndexOutOfBoundsException se produisent lorsque tu essaye d'accéder à un index de ton tableau qui est soit négatif, plus grand que la taille de ton tableau ou égal à la taille de ton tableau (car l'index commence à 0 donc si la taille de ton tableau = 5 le plus grand index existant est 4).

    C'est la seule piste à explorer. Dans ton code je ne vois pas la fin de ta boucle while donc je ne sais pas trop à quel endroit exactement ça plante.

  10. #10
    Modérateur

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

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Assez d'accord. Ça coûte quand même pas cher d'isoler un peu le code fautif et de montrer juste ça, avec une description complète de l'exception et de sa stacktrace.

    Bon, ceci étant dit, on m'a prêté une boule de cristal en attendant réparation de la mienne : le problème vient sûrement de splitted[3] vu que rien ne garantit que ce tableau a au moins 4 éléments.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  11. #11
    Candidat au Club
    Inscrit en
    Avril 2010
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 4
    Par défaut Merci
    Merci pour vos réponses je regarderais ça demain au boulot. encore désolée d'avoir squatté ton post...

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

Discussions similaires

  1. erreur :An unhandled exception of type
    Par Blunt dans le forum Visual C++
    Réponses: 3
    Dernier message: 21/04/2007, 19h55
  2. Réponses: 3
    Dernier message: 30/03/2007, 11h57
  3. Réponses: 1
    Dernier message: 27/03/2007, 09h50
  4. probleme avec l'exception de type NullPointerException
    Par darkdindon dans le forum Langage
    Réponses: 1
    Dernier message: 26/03/2007, 05h27
  5. Réponses: 2
    Dernier message: 11/10/2006, 10h36

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