Esempio n. 1
0
        /// <summary>
        /// Methode pour la serialisation des elements en XML.
        /// </summary>
        /// <param name="Chiffrement">Chiffrement du fichier</param>
        /// <param name="Arborescence">Arborescence que l'on veut chiffrer</param>
        public void Serialise(Rijndael Chiffrement, Dossier Arborescence)
        {
            XmlSerializer Serialiser = new XmlSerializer(Arborescence.GetType(), new Type[] { typeof(Dossier) });
            TextWriter    Fichier    = new StreamWriter(Constantes.CheminFichierNonChiffrer);

            Serialiser.Serialize(Fichier, Arborescence);
            Fichier.Close();
            CryptographieFichier.ChiffrementFichier(Chiffrement);
        }
Esempio n. 2
0
        /// <summary>
        /// Methode pour la deserialisation des elements en XML. Si la deserialisation ne marche pas, la liste de dossier n'est pas vide
        /// </summary>
        /// <param name="Chiffrement">Chiffrement du fichier</param>
        /// <param name="ListeDossier">Arborescence ou le resultat de la deserialisation se trouvera</param>
        public void Deserialise(Rijndael Chiffrement, ref Dossier ListeDossier)
        {
            try
            {
                CryptographieFichier.DechiffrementFichier(Chiffrement);

                Dossier       ListeDossierTemporaire = null;
                XmlSerializer Serialiser             = new XmlSerializer(typeof(Dossier));

                TextReader Fichier = new StreamReader(Constantes.CheminFichierNonChiffrer);
                ListeDossierTemporaire = (Dossier)Serialiser.Deserialize(Fichier);
                Fichier.Close();
                File.Delete(Constantes.CheminFichierNonChiffrer);
                if (ListeDossierTemporaire != null)
                {
                    ListeDossier = ListeDossierTemporaire;
                }
            }
            catch (FileNotFoundException e)
            {
                throw e;
            }
        }