コード例 #1
0
        static Dictionary <string, string> CreerDictionnaire(List <CTelephone> list)
        {
            //On désire un dictionnaire permettant de retrouver, en fonction d’un numéro, le propriétaire ou le bureau
            //correspondant.Proposez et testez une solution en utilisant un Dictionary
            Dictionary <string, string> dictionnaire = new Dictionary <string, string>();

            if (list != null)
            {
                for (int i = 0; i < list.Count; i++)
                {
                    //Si l'élément de la liste appartient à la classe CFixe
                    if (list[i] is CFixe)
                    {
                        //ici on cast car on a reconnu un objet CFixe
                        CFixe f = (CFixe)list[i];
                        dictionnaire.Add(f.Numero, f.Bureau);
                    }
                    else
                    {
                        CPortable p = (CPortable)list[i];
                        dictionnaire.Add(p.Numero, p.NomProprietaire);
                    }
                }
            }
            return(dictionnaire);
        }
コード例 #2
0
        static List <CTelephone> LectureFichier(string nomFichier) // @"C: \Users\Mathieu utilisateur\Documents\Visual Studio 2015\Projects\ANNEE 3\Programmation_Oriente_Objet\TD6\TD6\bin\Debug\liste1.txt"
        {
            List <CTelephone> list = new List <CTelephone>();

            try
            {
                StreamReader monStreamReader = new StreamReader(nomFichier);
                //On déclare une string pour la lecture ligne par ligne
                string ligne = monStreamReader.ReadLine();

                //Tant que l'on est pas à la fin du fichier
                while (ligne != null)
                {
                    //Chaque mot dans le fichier est séparé par une virgule
                    //Donc on voit la ligne comme une tableau de string et a chaque virgule on met une condition
                    //Ici en premier on a soit "fixe" soit "portable
                    string[] temp = ligne.Split(',');
                    if (temp[0] == "Fixe")
                    {
                        /*
                         * Console.WriteLine("TelephoneFixe ");
                         * // * ici pour chaque element de la ligne on l'écrit
                         * foreach (string val in temp)
                         * {
                         *  Console.WriteLine("     " + val);
                         * }
                         */
                        //On ajoute le téléphone dans la list en l'instanciant
                        CFixe f = new CFixe(temp[1], temp[2], temp[3]);
                        list.Add(f);
                    }
                    else
                    {
                        /*
                         * //Autre facon que *
                         * Console.WriteLine("TelephonePortable ");
                         * Console.WriteLine("     " + temp[0]);
                         * Console.WriteLine("     " + temp[1]);
                         * Console.WriteLine("     " + temp[2]);
                         * Console.WriteLine("     " + temp[3]);
                         */
                        CPortable p = new CPortable(temp[1], temp[2], temp[3]);
                        list.Add(p);
                    }
                    //On change de ligne
                    ligne = monStreamReader.ReadLine();
                }
                // Et on oublie pas de fermer le flux
                monStreamReader.Close();
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message + "\n");
            }
            return(list);
        }
コード例 #3
0
        static void Exo1()
        {
            CFixe     F1 = new CFixe("Samsung", "0610194877", "KPIWEB");
            CPortable P1 = new CPortable("Apple", "0786950301", "Mathieu");

            Console.WriteLine(F1.ToString());
            Console.WriteLine(P1.ToString());

            //Suite exo 2
            List <CTelephone> list = new List <CTelephone>();

            list.Add(F1);
            list.Add(P1);
        }