private void button_Click(object sender, RoutedEventArgs e) //Si on appuie sur le bouton "ajout" d'un personnel { string nomPersonnel = Champ_Nom.Text; string prenomPersonnel = Champ_Prenom.Text; string matriculePersonnel = Champ_Matricule.Text; string fonctionPersonnel = Champ_Fonction.Text; string sexePersonnel = comboBox_Sexe.Text; if (ChoixCreationPersonnel.Text == "Sorcier") //si on veut créer un sorcier { string tatouagePersonnel = Champ_Tatouage.Text; string pouvoirPersonnel = comboBox_Pouvoir.Text; CSorcier nouveauSorcier = new CSorcier(matriculePersonnel, nomPersonnel, prenomPersonnel, sexePersonnel, fonctionPersonnel, tatouagePersonnel, pouvoirPersonnel); monAdministration.ListPersonnels.Add(nouveauSorcier); //Si possible changer la couleur au moment de l'ajout } else { string cagnottePersonnel = Champ_Cagnotte.Text; string IDAttractionAffectationPersonnel = Champ_IDAttraction.Text; if (ChoixCreationPersonnel.Text == "Fantome") { CFantome nouveauFantome = new CFantome(matriculePersonnel, nomPersonnel, prenomPersonnel, sexePersonnel, fonctionPersonnel, cagnottePersonnel, IDAttractionAffectationPersonnel); monAdministration.ListPersonnels.Add(nouveauFantome); //Si possible changer la couleur au moment de l'ajout } else if (ChoixCreationPersonnel.Text == "Demon") { string ForcePersonnel = Champ_Force.Text; CDemon nouveauDemon = new CDemon(matriculePersonnel, nomPersonnel, prenomPersonnel, sexePersonnel, fonctionPersonnel, cagnottePersonnel, IDAttractionAffectationPersonnel, ForcePersonnel); monAdministration.ListPersonnels.Add(nouveauDemon); //Si possible changer la couleur au moment de l'ajout } else if (ChoixCreationPersonnel.Text == "LoupGarou") { string CruautePersonnel = Champ_Cruaute.Text; CLoupGarou nouveauLoupGarou = new CLoupGarou(matriculePersonnel, nomPersonnel, prenomPersonnel, sexePersonnel, fonctionPersonnel, cagnottePersonnel, IDAttractionAffectationPersonnel, CruautePersonnel); monAdministration.ListPersonnels.Add(nouveauLoupGarou); //Si possible changer la couleur au moment de l'ajout } else if (ChoixCreationPersonnel.Text == "Vampire") { string LuminositePersonnel = Champ_Luminosite.Text; CVampire nouveauVampire = new CVampire(matriculePersonnel, nomPersonnel, prenomPersonnel, sexePersonnel, fonctionPersonnel, cagnottePersonnel, IDAttractionAffectationPersonnel, LuminositePersonnel); monAdministration.ListPersonnels.Add(nouveauVampire); //Si possible changer la couleur au moment de l'ajout } else if (ChoixCreationPersonnel.Text == "Zombie") { string DecompositionPersonnel = Champ_Decomposition.Text; string couleurZPersonnel = comboBox_CouleurZ.Text; CZombie nouveauZombie = new CZombie(matriculePersonnel, nomPersonnel, prenomPersonnel, sexePersonnel, fonctionPersonnel, cagnottePersonnel, IDAttractionAffectationPersonnel, couleurZPersonnel, DecompositionPersonnel); monAdministration.ListPersonnels.Add(nouveauZombie); //Si possible changer la couleur au moment de l'ajout } MessageBox.Show("Le personnel a été ajouté"); } }
//Affichage de la liste des personnels chargée en attribut dans un .CSV public void AffichageListePersonnelDansCSV(string nomFichier, List <CPersonnel> list) { try { StreamWriter ecriture = new StreamWriter(nomFichier); string mot = " "; for (int i = 0; i < list.Count; i++) { mot = list[i].RacePersonnelStr + ";" + list[i].MatriculeInt + ";" + list[i].NomStr + ";" + list[i].PrenomStr + ";" + list[i].Sexe + ";" + list[i].FonctionStr + ";"; //Il faut maintenant différencier toutes les races des personnels pour finir d'afficher tous les attributs if (list[i] is CSorcier) { CSorcier s = (CSorcier)list[i]; mot += s.Tatouage + ";"; foreach (string element in s.ListePouvoirs) { if (element == s.ListePouvoirs.Last()) { mot += element; } else { mot += element + "-"; } } } else if (list[i] is CDemon) { CDemon d = (CDemon)list[i]; mot += d.CagnotteInt + ";" + d.IDAttractionAffecteeInt + ";" + d.ForceInt; } else if (list[i] is CFantome) { CFantome f = (CFantome)list[i]; mot += f.CagnotteInt + ";" + f.IDAttractionAffecteeInt; } else if (list[i] is CLoupGarou) { CLoupGarou l = (CLoupGarou)list[i]; mot += l.CagnotteInt + ";" + l.IDAttractionAffecteeInt + ";" + l.IndiceCruauteDbl; } else if (list[i] is CVampire) { CVampire v = (CVampire)list[i]; mot += v.CagnotteInt + ";" + v.IDAttractionAffecteeInt + ";" + v.IndiceLuminositeFloat; } else if (list[i] is CZombie) { CZombie z = (CZombie)list[i]; mot += z.CagnotteInt + ";" + z.IDAttractionAffecteeInt + ";" + z.DegreDecompositionInt + ";" + z.Teint; } //Cette boucle est mise à la fin car tous les personnels sont de race CMonstre, donc si on arrive ici, alors on est sur que c'est un pur monstre else if (list[i] is CMonstre) { CMonstre m = (CMonstre)list[i]; mot += m.CagnotteInt + ";" + m.IDAttractionAffecteeInt; } ecriture.Write(mot + "\n"); } ecriture.Close(); Console.WriteLine("Les données ont été rangés dans un fichier .csv de nom : " + nomFichier); } catch (Exception e) { Console.WriteLine("ERREUR DANS AffichageListePersonnelDansCSV" + e.Message); } }
public void AjouterUnMembreDuPersonnel() { bool reponseUtilisateurChoixPersonnelBool = false; bool PersonnelCreeBool = false; string reponseFinaleAttractionStr = ""; string reponseUtilisateur = ""; try { Console.WriteLine("BIENVENUE DANS L'ESPACE DE CREATION DES MEMBRES DU PERSONNEL"); Console.WriteLine("-------------------------------------------------------\n"); while (!reponseUtilisateurChoixPersonnelBool) //tant que le choix utilisateur sur l'attraction est incorrect { #region Choix Utilisateur pour la crétion de monstre try { Console.WriteLine("On choisit le type de membre du personnel que l'on veut créer, par exemple: monstre."); reponseUtilisateur = "Monstre"; if (reponseUtilisateur == "Monstre") { reponseUtilisateurChoixPersonnelBool = true; } else if (reponseUtilisateur == "Sorcier") { reponseUtilisateurChoixPersonnelBool = true; } else if (reponseUtilisateur == "Demon") { reponseUtilisateurChoixPersonnelBool = true; } else if (reponseUtilisateur == "LoupGarou") { reponseUtilisateurChoixPersonnelBool = true; } else if (reponseUtilisateur == "Vampire") { reponseUtilisateurChoixPersonnelBool = true; } else if (reponseUtilisateur == "Zombie") { reponseUtilisateurChoixPersonnelBool = true; } else if (reponseUtilisateur == "Fantome") { reponseUtilisateurChoixPersonnelBool = true; } else { throw new Exception("La reponse utlisateur est incorrect"); } reponseFinaleAttractionStr = reponseUtilisateur; } catch (Exception e) { Console.WriteLine(e.Message); reponseUtilisateurChoixPersonnelBool = false; } #endregion } while (!PersonnelCreeBool) { #region Creation des Personnels try { //Tous les attributs en commun //string raceStr = reponseUtilisateur; string matriculeStr = ""; string nomStr = ""; string prenomStr = ""; string sexeStr = ""; string fonctionStr = ""; string cagnotteStr = ""; Console.WriteLine("On choisit un matricule au membre du personnel que l'on souhaite ajouter, par exemple : 54321"); matriculeStr = "54321"; Console.WriteLine("On choisit un nom de famille au membre du personnel que l'on souhaite ajouter, par exemple : Jean"); nomStr = "DUPONT"; Console.WriteLine("On choisit un pénom au membre du personnel que l'on souhaite ajouter, par exemple : DUPONT"); prenomStr = "Jean"; Console.WriteLine("On choisit un sexe au membre du personnel que l'on souhaite ajouter, par exemple : male"); sexeStr = "male"; Console.WriteLine("On choisit une fonction au membre du personnel que l'on souhaite ajouter, par exemple : stagiaire"); fonctionStr = "stagiaire"; if (reponseFinaleAttractionStr == "Sorcier") { string gradeStr = ""; Console.WriteLine("Chosir le grade du sorcier (novice, mega, giga, strata) : "); gradeStr = Console.ReadLine(); string listPouvoirStr = ""; Console.WriteLine("Chosir le(s) pouvoir(s) du sorcier, ils doivent êre séaré d'un - : "); listPouvoirStr = Console.ReadLine(); CSorcier nouveauSorcier = new CSorcier(matriculeStr, nomStr, prenomStr, sexeStr, fonctionStr, gradeStr, listPouvoirStr); if (nouveauSorcier != null) { PersonnelCreeBool = true; m_toutLePersonnelListPers.Add(nouveauSorcier); Console.WriteLine("Le sorcier a été ajouté avec succès à la liste des personnels"); } } else if (reponseFinaleAttractionStr == "Monstre") { Console.WriteLine("On choisit une cagnotte au monstre que l'on souhaite ajouter, par exmple : 34"); cagnotteStr = "34"; string affectationStr = ""; Console.WriteLine("On choisit une attraction au monstre que l'on souhaite ajouter, par exmple : 684"); affectationStr = "684"; CMonstre nouveauMonstre = new CMonstre(matriculeStr, nomStr, prenomStr, sexeStr, fonctionStr, cagnotteStr, affectationStr); if (nouveauMonstre != null) { PersonnelCreeBool = true; m_toutLePersonnelListPers.Add(nouveauMonstre); MAJDesStatutsDesMonstresEnFonctionDeLaCagnotte(nouveauMonstre); Console.WriteLine("Le monstre a ééjoutévec succè a la liste des personnels"); } } else if (reponseFinaleAttractionStr == "Demon") { Console.WriteLine("Chosir la cagnotte : "); cagnotteStr = Console.ReadLine(); string affectationStr = ""; Console.WriteLine("Chosir parmi les attractions existantes un matricule (3 chiffres): "); affectationStr = Console.ReadLine(); string forceStr = ""; Console.WriteLine("Chosir la force du demon : "); forceStr = Console.ReadLine(); CDemon nouveauPersonnel = new CDemon(matriculeStr, nomStr, prenomStr, sexeStr, fonctionStr, cagnotteStr, affectationStr, forceStr); if (nouveauPersonnel != null) { PersonnelCreeBool = true; m_toutLePersonnelListPers.Add(nouveauPersonnel); Console.WriteLine("Le demon a ééjoutévec succè a la liste des personnels"); } } else if (reponseFinaleAttractionStr == "Fantome") { Console.WriteLine("Chosir la cagnotte : "); cagnotteStr = Console.ReadLine(); string affectationStr = ""; Console.WriteLine("Chosir parmi les attractions existantes un matricule (3 chiffres): "); affectationStr = Console.ReadLine(); CFantome nouveauPersonnel = new CFantome(matriculeStr, nomStr, prenomStr, sexeStr, fonctionStr, cagnotteStr, affectationStr); if (nouveauPersonnel != null) { PersonnelCreeBool = true; m_toutLePersonnelListPers.Add(nouveauPersonnel); MAJDesStatutsDesMonstresEnFonctionDeLaCagnotte(nouveauPersonnel); Console.WriteLine("Le fantome a ééjoutévec succè a la liste des personnels"); } } else if (reponseFinaleAttractionStr == "LoupGarou") { Console.WriteLine("Chosir la cagnotte : "); cagnotteStr = Console.ReadLine(); string affectationStr = ""; Console.WriteLine("Chosir parmi les attractions existantes un matricule (3 chiffres): "); affectationStr = Console.ReadLine(); string forceStr = ""; Console.WriteLine("Chosir la cruautéu LoupGarou : "); forceStr = Console.ReadLine(); CLoupGarou nouveauPersonnel = new CLoupGarou(matriculeStr, nomStr, prenomStr, sexeStr, fonctionStr, cagnotteStr, affectationStr, forceStr); if (nouveauPersonnel != null) { PersonnelCreeBool = true; m_toutLePersonnelListPers.Add(nouveauPersonnel); MAJDesStatutsDesMonstresEnFonctionDeLaCagnotte(nouveauPersonnel); Console.WriteLine("Le LoupGarou a ééjoutévec succè a la liste des personnels"); } } else if (reponseFinaleAttractionStr == "Vampire") { Console.WriteLine("Chosir la cagnotte : "); cagnotteStr = Console.ReadLine(); string affectationStr = ""; Console.WriteLine("Chosir parmi les attractions existantes un matricule (3 chiffres): "); affectationStr = Console.ReadLine(); string indiceStr = ""; Console.WriteLine("Chosir la luminositéu vampire : "); indiceStr = Console.ReadLine(); CVampire nouveauPersonnel = new CVampire(matriculeStr, nomStr, prenomStr, sexeStr, fonctionStr, cagnotteStr, affectationStr, indiceStr); if (nouveauPersonnel != null) { PersonnelCreeBool = true; m_toutLePersonnelListPers.Add(nouveauPersonnel); MAJDesStatutsDesMonstresEnFonctionDeLaCagnotte(nouveauPersonnel); Console.WriteLine("Le vampire a ééjoutévec succè a la liste des personnels"); } } else if (reponseFinaleAttractionStr == "Zombie") { Console.WriteLine("Chosir la cagnotte : "); cagnotteStr = Console.ReadLine(); string affectationStr = ""; Console.WriteLine("Chosir parmi les attractions existantes un matricule (3 chiffres): "); affectationStr = Console.ReadLine(); string couleurStr = ""; Console.WriteLine("Chosir la teinte du zombie (bleuatre/grisatre) : "); couleurStr = Console.ReadLine(); string degreStr = ""; Console.WriteLine("Choisir le degrée déomposition du zombie : "); degreStr = Console.ReadLine(); CZombie nouveauPersonnel = new CZombie(matriculeStr, nomStr, prenomStr, sexeStr, fonctionStr, cagnotteStr, affectationStr, couleurStr, degreStr); if (nouveauPersonnel != null) { PersonnelCreeBool = true; m_toutLePersonnelListPers.Add(nouveauPersonnel); MAJDesStatutsDesMonstresEnFonctionDeLaCagnotte(nouveauPersonnel); Console.WriteLine("Le zombie a ééjoutévec succè a la liste des personnels"); } } } catch (Exception e) { Console.WriteLine("ERREUR DANS AjouterUnMembreDuPersonnel() : " + e.Message); } #endregion } } catch (Exception e) { Console.WriteLine("ERREUR DANS AjouterUnMembreDuPersonnel() " + e.Message); } //Console.WriteLine("------------------------FIN ESPACE DE CREATION PERSONNEL-------------------------------\n"); }
static void LectureFichierCSV(string nomFichier, List <CPersonnel> listDesPersonnels, List <CAttraction> listDesAttractions) { int i = 1; try { #region Test De la validé du fichier entré en paramètre StreamReader monStreamReader = new StreamReader(nomFichier); //On déclare une string pour la lecture ligne par ligne du fichier .csv string ligneLuStr = monStreamReader.ReadLine(); //Lecture de la premiere ligne //Tant que l'on est pas à la fin du fichier //Installation d'un compteur List <CMonstre> listDesMonstres = new List <CMonstre>(); while (ligneLuStr != null) { try { //Chaque mot dans le fichier est séparé par un ; string[] TabStr = ligneLuStr.Split(';'); // Toutes les cases sont contenues dans le tab de string //DisplayTabStr(tempTabStr); if (TabStr[0] == "Sorcier") { #region Condition pour creer un sorcier //NOUS NOUS OCCUPONS D'UN SORCIER //Il faut enlever les deux dernieres cases du tableau car il fait automatiquement 10 de taille string[] tempTabStr = new string[8]; // 7 attributs + 1 case "sorcier" for (int index = 0; index < tempTabStr.Length; index++) { tempTabStr[index] = TabStr[index]; } //On se retrouve du coup avec un tableau de 8 comme prévu pour le sorcier //DisplayTabStr(tempTabStr); //Le but est de blinder ce que l'on va pouvoir lire sur le fichier pour faciliter le constructeur ensuite if (tempTabStr.Length == 8) // car contient 7 attributs + 1 pour la premiere case { CSorcier nouveauSorcier = new CSorcier(tempTabStr[1], tempTabStr[2], tempTabStr[3], tempTabStr[4], tempTabStr[5], tempTabStr[6], tempTabStr[7]); listDesPersonnels.Add(nouveauSorcier); } else { throw new Exception("\nLIGNE[" + i + "] ERREUR POUR LA BOUCLE " + tempTabStr[0].ToUpper() + " : Le nombre d'attributs dans le .csv est incorrect : " + tempTabStr.Length + "\nOU certains attributs ont été mal rempli dans le fichier .csv: "); } #endregion } else if (TabStr[0] == "Monstre") { #region Condition pour creer un monstre //NOUS NOUS OCCUPONS D'UN MONSTRE //Il faut enlever les deux dernieres cases du tableau car il fait automatiquement 10 de taille string[] tempTabStr = new string[8]; // 7 attributs + 1 case "monstre" for (int index = 0; index < tempTabStr.Length; index++) { tempTabStr[index] = TabStr[index]; } //On se retrouve du coup avec un tableau de 8 comme prévu pour le monstre //DisplayTabStr(tempTabStr); //Le but est de blinder ce que l'on va pouvoir lire sur le fichier pour faciliter le constructeur ensuite if (tempTabStr.Length == 8) // car contient 7 attributs + 1 pour la premiere case { CMonstre nouveauMonstre = new CMonstre(tempTabStr[1], tempTabStr[2], tempTabStr[3], tempTabStr[4], tempTabStr[5], tempTabStr[6], tempTabStr[7]); listDesMonstres.Add(nouveauMonstre); listDesPersonnels.Add(nouveauMonstre); } else { throw new Exception("\nLIGNE[" + i + "] ERREUR POUR LA BOUCLE " + tempTabStr[0].ToUpper() + " : Le nombre d'attributs dans le .csv est incorrect : " + tempTabStr.Length + "\nOU certains attributs ont été mal rempli dans le fichier .csv: "); } #endregion } else if (TabStr[0] == "Demon") { #region Condition pour creer un demon //NOUS NOUS OCCUPONS D'UN DEMON //Il faut enlever la derniere case du tableau car il fait automatiquement 10 de taille string[] tempTabStr = new string[9]; // 8 attributs + 1 case "demon" for (int index = 0; index < tempTabStr.Length; index++) { tempTabStr[index] = TabStr[index]; } //On se retrouve du coup avec un tableau de 9 comme prévu pour le demon //DisplayTabStr(tempTabStr); //Le but est de blinder ce que l'on va pouvoir lire sur le fichier pour faciliter le constructeur ensuite if (tempTabStr.Length == 9) // car contient 8 attributs + 1 pour la premiere case { CDemon nouveauDemon = new CDemon(tempTabStr[1], tempTabStr[2], tempTabStr[3], tempTabStr[4], tempTabStr[5], tempTabStr[6], tempTabStr[7], tempTabStr[8]); listDesMonstres.Add(nouveauDemon); listDesPersonnels.Add(nouveauDemon); } else { throw new Exception("\nLIGNE[" + i + "] ERREUR POUR LA BOUCLE " + tempTabStr[0].ToUpper() + " : Le nombre d'attributs dans le .csv est incorrect : " + tempTabStr.Length + "\nOU certains attributs ont été mal rempli dans le fichier .csv: "); } #endregion } else if (TabStr[0] == "LoupGarou") { #region Condition pour creer un LoupGarou //NOUS NOUS OCCUPONS D'UN LoupGarou //Il faut enlever la derniere case du tableau car il fait automatiquement 10 de taille string[] tempTabStr = new string[9]; // 8 attributs + 1 case "loupgarou" for (int index = 0; index < tempTabStr.Length; index++) { tempTabStr[index] = TabStr[index]; } //On se retrouve du coup avec un tableau de 9 comme prévu pour le loupgarou //DisplayTabStr(tempTabStr); //Le but est de blinder ce que l'on va pouvoir lire sur le fichier pour faciliter le constructeur ensuite if (tempTabStr.Length == 9) // car contient 8 attributs + 1 pour la premiere case { CLoupGarou nouveauLoupGarou = new CLoupGarou(tempTabStr[1], tempTabStr[2], tempTabStr[3], tempTabStr[4], tempTabStr[5], tempTabStr[6], tempTabStr[7], tempTabStr[8]); listDesMonstres.Add(nouveauLoupGarou); listDesPersonnels.Add(nouveauLoupGarou); } else { throw new Exception("\nLIGNE[" + i + "] ERREUR POUR LA BOUCLE " + tempTabStr[0].ToUpper() + " : Le nombre d'attributs dans le .csv est incorrect : " + tempTabStr.Length + "\nOU certains attributs ont été mal rempli dans le fichier .csv: "); } #endregion } else if (TabStr[0] == "Vampire") { #region Condition pour creer un Vampire //NOUS NOUS OCCUPONS D'UN Vampire //Il faut enlever la derniere case du tableau car il fait automatiquement 10 de taille string[] tempTabStr = new string[9]; // 8 attributs + 1 case "vampire" for (int index = 0; index < tempTabStr.Length; index++) { tempTabStr[index] = TabStr[index]; } //On se retrouve du coup avec un tableau de 9 comme prévu pour le vampire //DisplayTabStr(tempTabStr); //Le but est de blinder ce que l'on va pouvoir lire sur le fichier pour faciliter le constructeur ensuite if (tempTabStr.Length == 9) // car contient 8 attributs + 1 pour la premiere case { CVampire nouveauVampire = new CVampire(tempTabStr[1], tempTabStr[2], tempTabStr[3], tempTabStr[4], tempTabStr[5], tempTabStr[6], tempTabStr[7], tempTabStr[8]); listDesMonstres.Add(nouveauVampire); listDesPersonnels.Add(nouveauVampire); } else { throw new Exception("\nLIGNE[" + i + "] ERREUR POUR LA BOUCLE " + tempTabStr[0].ToUpper() + " : Le nombre d'attributs dans le .csv est incorrect : " + tempTabStr.Length + "\nOU certains attributs ont été mal rempli dans le fichier .csv: "); } #endregion } else if (TabStr[0] == "Fantome") { #region Condition pour creer un fantome //NOUS NOUS OCCUPONS D'UN FANTOME //Il faut enlever les deux dernieres cases du tableau car il fait automatiquement 10 de taille string[] tempTabStr = new string[8]; // 8 attributs + 1 case "fantome" for (int index = 0; index < tempTabStr.Length; index++) { tempTabStr[index] = TabStr[index]; } //On se retrouve du coup avec un tableau de 8 comme prévu pour le monstre //DisplayTabStr(tempTabStr); //Le but est de blinder ce que l'on va pouvoir lire sur le fichier pour faciliter le constructeur ensuite if (tempTabStr.Length == 8) // car contient 7 attributs + 1 pour la premiere case // Dans les 2 cas, on prend soin de vérifier que ce sont bien les 8 premieres cases du fichier csv qui sont remplies et non la 11eme (ce qui ferait une .Length de 10 et du coup ça passerait) { CFantome nouveauFantome = new CFantome(tempTabStr[1], tempTabStr[2], tempTabStr[3], tempTabStr[4], tempTabStr[5], tempTabStr[6], tempTabStr[7]); listDesMonstres.Add(nouveauFantome); listDesPersonnels.Add(nouveauFantome); } else { throw new Exception("\nLIGNE[" + i + "] ERREUR POUR LA BOUCLE " + tempTabStr[0].ToUpper() + " : Le nombre d'attributs dans le .csv est incorrect : " + tempTabStr.Length + "\nOU certains attributs ont été mal rempli dans le fichier .csv: "); } #endregion } else if (TabStr[0] == "Zombie") { #region Condition pour creer un zombie //NOUS NOUS OCCUPONS D'UN ZOMBIE string[] tempTabStr = TabStr; // 9 attributs + 1 case "zombie" if (tempTabStr.Length == 10) // car contient 9 attributs + 1 pour la premiere case { CZombie nouveauZombie = new CZombie(tempTabStr[1], tempTabStr[2], tempTabStr[3], tempTabStr[4], tempTabStr[5], tempTabStr[6], tempTabStr[7], tempTabStr[8], tempTabStr[9]); listDesMonstres.Add(nouveauZombie); listDesPersonnels.Add(nouveauZombie); } else { throw new Exception("\nLIGNE[" + i + "] ERREUR POUR LA BOUCLE " + tempTabStr[0].ToUpper() + " : Le nombre d'attributs dans le .csv est incorrect : " + tempTabStr.Length + "\nOU certains attributs ont été mal rempli dans le fichier .csv: "); } #endregion } else if (TabStr[0] == "Boutique") { #region Condition pour creer une boutique //NOUS NOUS OCCUPONS D'UN BOUTIQUE //Il faut enlever la derniere case du tableau car il fait automatiquement 10 de taille string[] tempTabStr = new string[7]; // 6 attributs + 1 case "boutique" for (int index = 0; index < tempTabStr.Length; index++) { tempTabStr[index] = TabStr[index]; } //On se retrouve du coup avec un tableau de 7 comme prévu pour la boutique //DisplayTabStr(tempTabStr); //Le but est de blinder ce que l'on va pouvoir lire sur le fichier pour faciliter le constructeur ensuite if (tempTabStr.Length == 7) // car contient 6 attributs + 1 pour la premiere case { CBoutique nouvelleBoutique = new CBoutique(tempTabStr[1], tempTabStr[2], tempTabStr[3], tempTabStr[4], tempTabStr[5], tempTabStr[6]); listDesAttractions.Add(nouvelleBoutique); } else { throw new Exception("\nLIGNE[" + i + "] ERREUR POUR LA BOUCLE " + tempTabStr[0].ToUpper() + " : Le nombre d'attributs dans le .csv est incorrect : " + tempTabStr.Length + "\nOU certains attributs ont été mal rempli dans le fichier .csv: "); } #endregion } else if (TabStr[0] == "Spectacles") { #region Condition pour creer un spectacle //NOUS NOUS OCCUPONS D'UN SPECTACLE //Il faut enlever la derniere case du tableau car il fait automatiquement 10 de taille string[] tempTabStr = new string[9]; // 8 attributs + 1 case "boutique" for (int index = 0; index < tempTabStr.Length; index++) { tempTabStr[index] = TabStr[index]; } //On se retrouve du coup avec un tableau de 9 comme prévu pour le spectacle //DisplayTabStr(tempTabStr); //Le but est de blinder ce que l'on va pouvoir lire sur le fichier pour faciliter le constructeur ensuite if (tempTabStr.Length == 9) // car contient 8 attributs + 1 pour la premiere case { CSpectacle nouveauSpectacle = new CSpectacle(tempTabStr[1], tempTabStr[2], tempTabStr[3], tempTabStr[4], tempTabStr[5], tempTabStr[6], tempTabStr[7], tempTabStr[8]); listDesAttractions.Add(nouveauSpectacle); } else { throw new Exception("\nLIGNE[" + i + "] ERREUR POUR LA BOUCLE " + tempTabStr[0].ToUpper() + " : Le nombre d'attributs dans le .csv est incorrect : " + tempTabStr.Length + "\nOU certains attributs ont été mal rempli dans le fichier .csv: "); } #endregion } else if (TabStr[0] == "DarkRide") { #region Condition pour creer un DarkRide //NOUS NOUS OCCUPONS D'UN DarkRide //Il faut enlever la derniere case du tableau car il fait automatiquement 10 de taille string[] tempTabStr = new string[8]; // 7 attributs + 1 case "DarkRide" for (int index = 0; index < tempTabStr.Length; index++) { tempTabStr[index] = TabStr[index]; } //On se retrouve du coup avec un tableau de 8 comme prévu pour le DarkRide //DisplayTabStr(tempTabStr); //Le but est de blinder ce que l'on va pouvoir lire sur le fichier pour faciliter le constructeur ensuite if (tempTabStr.Length == 8) // car contient 7 attributs + 1 pour la premiere case { CDarkRide nouveauDarkRide = new CDarkRide(tempTabStr[1], tempTabStr[2], tempTabStr[3], tempTabStr[4], tempTabStr[5], tempTabStr[6], tempTabStr[7]); listDesAttractions.Add(nouveauDarkRide); } else { throw new Exception("\nLIGNE[" + i + "] ERREUR POUR LA BOUCLE " + tempTabStr[0].ToUpper() + " : Le nombre d'attributs dans le .csv est incorrect : " + tempTabStr.Length + "\nOU certains attributs ont été mal rempli dans le fichier .csv: "); } #endregion } else if (TabStr[0] == "RollerCoaster") { #region Condition pour creer un rollerCoaster //NOUS NOUS OCCUPONS D'UN rollerCoaster //Il faut enlever la derniere case du tableau car il fait automatiquement 10 de taille string[] tempTabStr = new string[9]; // 8 attributs + 1 case "boutique" for (int index = 0; index < tempTabStr.Length; index++) { tempTabStr[index] = TabStr[index]; } //Le but est de blinder ce que l'on va pouvoir lire sur le fichier pour faciliter le constructeur ensuite if (tempTabStr.Length == 9) // car contient 6 attributs + 1 pour la premiere case { CRollerCoaster nouveauRollerCoaster = new CRollerCoaster(tempTabStr[1], tempTabStr[2], tempTabStr[3], tempTabStr[4], tempTabStr[5], tempTabStr[6], tempTabStr[7], tempTabStr[8]); listDesAttractions.Add(nouveauRollerCoaster); } else { throw new Exception("\nLIGNE[" + i + "] ERREUR POUR LA BOUCLE " + tempTabStr[0].ToUpper() + " : Le nombre d'attributs dans le .csv est incorrect : " + tempTabStr.Length + "\nOU certains attributs ont été mal rempli dans le fichier .csv: "); } #endregion } else { throw new Exception("\nLIGNE[" + i + "] ERREUR POUR LA CASE 1 : Le type d'objet n'est pas reconnu pour le parc : " + TabStr[0]); } } catch (Exception e) { Console.WriteLine("\nERREUR DANS LECTUREFICHIERCSV LIGNE[" + i + "] : " + e.Message); } i++; ligneLuStr = monStreamReader.ReadLine(); //Lecture de la ligne suivante } // Et on oublie pas de fermer le flux monStreamReader.Close(); //Il faut maintenant vérifier si toutes les affectations aux attractions chez les monstres est valide //foreach(CMonstre m in listDesMonstres) //{ // Console.WriteLine(m.DisplayObject()); //} //foreach (CAttraction m in listDesAttractions) //{ // Console.WriteLine(m.DisplayObject()); //} //Console.WriteLine("JUSTE AVANT DE METTRE A JOUR LES AFFECTATIONS\n"); //Console.ReadKey(); try { MiseAJourDesAttractionsAffecteesAuxMonstres(listDesMonstres, listDesAttractions); } catch (Exception e) { Console.WriteLine("ERREUR pour MiseAJourDesAttractionsAffecteesAuxMonstres() " + e.Message); } //foreach (CPersonnel m in listDesPersonnels) //{ // Console.WriteLine(m.DisplayObject()); //} #endregion } catch (Exception e) { Console.WriteLine("ERREUR FICHIER DANS LECTUREFICHIERCSV : " + e.Message); } }