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

ALM Discussion :

GetListCsvFiles Quels sont les cas à prévoir et comment les traiter ?


Sujet :

ALM

  1. #1
    Membre averti
    Avatar de Pierre8r
    Homme Profil pro
    Inscrit en
    Octobre 2004
    Messages
    518
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 518
    Points : 341
    Points
    341
    Par défaut GetListCsvFiles Quels sont les cas à prévoir et comment les traiter ?
    Bonjour,

    Je souhaite écrire une fonction à laquelle on passe en paramètre l'adresse d'un répertoire, et qui renvoie comme valeur de retour la liste des fichiers, de ce répertoire, dont l'extension est csv.

    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.IO;
    
    namespace ConsoleApplication1
    {
        class Program
        {
            static void Main(string[] args)
            {
                string[] csvFiles = GetListCsvFiles(@"C:\DirectoryCsvFiles");
    
                foreach (String file in csvFiles)
                {
                    Console.WriteLine(file);
                };
    
                Console.ReadLine();
            }
    
            private static String[] GetListCsvFiles(string directoryCsvFiles)
            {
                return Directory.GetFiles(directoryCsvFiles, "*.csv");
            }
        }
    }
    Quels sont les cas à prévoir et comment les traiter ?

    1 cas :
    Le répertoire existe et il y a des fichiers csv.

    2 cas :
    Le répertoire passé en paramètre n'existe pas.

    3 cas :
    Il n'y a pas de fichiers csv.

    D'autres cas ?
    Comment traiter ces cas ?

    Merci,

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    312
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 312
    Points : 411
    Points
    411
    Par défaut
    - L'adresse du repertoire recue en parametre est null ou empty ?
    - L'adresse du repertoire n'est pas valide.
    - Le repertoire n'existe pas ou est inaccessible.
    - Impossible de lister les fichiers (problème de droits)
    - Pas de fichier csv (quoi qu'il faut se demander si ce n'est pas un cas normal : obtenir une liste vide)

    Comment traiter ces cas ?

    Ca dépend du fonctionnel de ton application :

    Si il faut absolument des fichiers dans ce repertoire, alors une ou plusieurs exceptions pourront faire l'affaire.

    Sinon, une méthode peut te permettre de tester si il y a des fichiers, ou alors ta classe peut retourner un code d'erreur (null ou une instance de classe typée).

    Je recommande la seconde solution

Discussions similaires

  1. Comprendre les optionnelles : quand et comment les utiliser ?
    Par Lana.Bauer dans le forum Développement iOS
    Réponses: 1
    Dernier message: 10/12/2015, 07h16
  2. Réponses: 5
    Dernier message: 29/09/2009, 12h26
  3. Réponses: 2
    Dernier message: 22/11/2007, 16h42
  4. Comment les BIOS sans piles retenaient les paramètres
    Par beegees dans le forum Composants
    Réponses: 27
    Dernier message: 20/03/2007, 21h24

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