Exception non gérée [Résolu]

mano23 - 5 janv. 2013 à 17:10 - Dernière réponse :  mano23
- 5 janv. 2013 à 22:04
Bonjour,

Je suis nouveau en C# et j'ai un petit problème pour sortir d'une boucle while quand l'utilisateur ne saisit aucune valeur. J'ai une erreur "Exception non gérée: System.IndexOutOfRangeException: L'index se trouve en dehors des limites du tableau". Voici mon code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace SenTech
{
    class Program
    {
        static void Main(string[] args)
        {
            string  saisie = " ";
            do
            {
                // Demander à 1'utilisateur de saisir une série de nombres
                Console.WriteLine("Entrez une série de nombres séparés par des virgules");

                //Pour lire le texte
                saisie = Console.ReadLine();
                Console.WriteLine();

                // Pour convertir la ligne saisie en segnents et en utilisant la virgule conme séparateur
                char[] separateur = { ',' };
                string[] segment = saisie.Split(separateur);

                Console.WriteLine("X : " + segment[0] + " Y : " + segment[1]);
                
                //Console.ReadLine();
            } 
            while (!string.IsNullOrEmpty(saisie));
        }
    }
}

Merci de votre aide.
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
yann_lo_san 1137 Messages postés lundi 17 novembre 2003Date d'inscription 23 janvier 2016 Dernière intervention - 5 janv. 2013 à 19:02
3
Merci
Salut,

Rajoutes un test après l'affectation du tableau :

string[] segment = saisie.Split(separateur);
if( segment == null || segment.Length < 2 )
{
    Console.WriteLine("Saisie invalide...");
    break;
}


bye...

Merci yann_lo_san 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 104 internautes ce mois-ci

Commenter la réponse de yann_lo_san
0
Merci
OK merci Yann c'est bon
Commenter la réponse de mano23

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.