Soyez le premier à donner votre avis sur cette source.
Vue 2 919 fois - Téléchargée 591 fois
using System; using System.IO; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using Microsoft.Win32; // OpenFileDialog using Microsoft.VisualBasic.FileIO; namespace WindowsFormsApplication3 { public partial class Main_form : Form { public Dictionary<String, String> extensionsList; public List<string> listeDossiers=new List<string>(); public Main_form() { InitializeComponent(); } #region addsousdossier private void AddSousDossiersSousFichiers(TreeNode NodePass, TreeView tree) { try { foreach (string dossier in System.IO.Directory.GetDirectories(NodePass.FullPath)) { listeDossiers.Add(new System.IO.DirectoryInfo(dossier).FullName); TreeNode childNode = new TreeNode(new System.IO.DirectoryInfo(dossier).Name); NodePass.Nodes.Add(childNode); AddSousDossiersSousFichiers(childNode, tree); } foreach (string fichier in System.IO.Directory.GetFiles(NodePass.FullPath)) { NodePass.Nodes.Add(System.IO.Path.GetFileName(fichier)); string chemincomplet = NodePass.FullPath + @"\" + System.IO.Path.GetFileName(fichier); FileInfo mon_fichier = new FileInfo(chemincomplet); string extension = mon_fichier.Extension.ToString(); if (ExtList.FindStringExact(extension) == -1) { ExtList.Items.AddRange(new object[] { extension }); } } } catch {/*Accès refusé*/} } #endregion private void sourceClick(object sender, EventArgs e) { if (folderBrowserDialog1.ShowDialog() == DialogResult.OK) { txSource.Text = folderBrowserDialog1.SelectedPath; } } private void cibleClick(object sender, EventArgs e) { if (folderBrowserDialog1.ShowDialog() == DialogResult.OK) { txCible.Text = folderBrowserDialog1.SelectedPath; } } private void fction_classer(object sender, EventArgs e) { if (!(txSource.Text == "")) { TreeNode initialNode; string initialDirectory = txSource.Text; treeView1.Nodes.Add(initialDirectory); initialNode = treeView1.Nodes[0]; AddSousDossiersSousFichiers(initialNode, treeView1); } else { MessageBox.Show("veuillez choisir le dossier à traiter"); } } private void rangement(string dosRecup) { foreach (string path in listeDossiers) { foreach (string fichier in System.IO.Directory.GetFiles(path)) { //MessageBox.Show(fichier); string chemincomplet = path + @"\" + System.IO.Path.GetFileName(fichier); FileInfo mon_fichier = new FileInfo(chemincomplet); string extension = mon_fichier.Extension.ToString(); if (this.extensionsList.ContainsValue(extension)) { string fichierS = chemincomplet; string fichierD = dosRecup + @"dossier de type " + extension +@"\"+ System.IO.Path.GetFileName(fichier); // MessageBox.Show(fichierS+" ---yes"); // MessageBox.Show(fichierS + " " + fichierD); if (!System.IO.Directory.Exists(dosRecup + @"dossier de type " + extension)) { System.IO.Directory.CreateDirectory(dosRecup + @"dossier de type " + extension); } System.IO.File.Copy (fichierS, fichierD, true); } } } } #region test private void test() { TreeNode ParentNode = new TreeNode(); ParentNode.Text = "RootNode"; ParentNode.ForeColor = Color.Black; ParentNode.BackColor = Color.White; ParentNode.ImageIndex = 0; ParentNode.SelectedImageIndex = 0; treeView1.Nodes.Add(ParentNode); //Root node in TreeView TreeNode ChildNode1 = new TreeNode(); ChildNode1.Text = "Child 1"; ChildNode1.ForeColor = Color.Black; ChildNode1.BackColor = Color.White; ChildNode1.ImageIndex = 0; ChildNode1.SelectedImageIndex = 0; ParentNode.Nodes.Add(ChildNode1); //Child node (parent is ParentNode) TreeNode ChildNode2 = new TreeNode(); ChildNode2.Text = "Child 2"; ChildNode2.ForeColor = Color.Black; ChildNode2.BackColor = Color.White; ChildNode2.ImageIndex = 0; ChildNode2.SelectedImageIndex = 0; ParentNode.Nodes.Add(ChildNode2); //Child node (parent is ParentNode) TreeNode ChildNode3 = new TreeNode(); ChildNode3.Text = "Child 3"; ChildNode3.ForeColor = Color.Black; ChildNode3.BackColor = Color.White; ChildNode3.ImageIndex = 0; ChildNode3.SelectedImageIndex = 0; ParentNode.Nodes.Add(ChildNode3); //Child node (parent is ParentNode) TreeNode ChildNode4 = new TreeNode(); ChildNode4.Text = "Child 4"; ChildNode4.ForeColor = Color.Black; ChildNode4.BackColor = Color.White; ChildNode4.ImageIndex = 0; ChildNode4.SelectedImageIndex = 0; ParentNode.Nodes.Add(ChildNode4); //Child node (parent is ParentNode) TreeNode NextChildNode1 = new TreeNode(); NextChildNode1.Text = "Next Child 1"; NextChildNode1.ForeColor = Color.Black; NextChildNode1.BackColor = Color.White; NextChildNode1.ImageIndex = 1; NextChildNode1.SelectedImageIndex = 1; ChildNode3.Nodes.Add(NextChildNode1); //Child node (parent is ChildNode3) TreeNode NextChildNode2 = new TreeNode(); NextChildNode2.Text = "Next Child 2"; NextChildNode2.ForeColor = Color.Black; NextChildNode2.BackColor = Color.White; NextChildNode2.ImageIndex = 1; NextChildNode2.SelectedImageIndex = 1; ChildNode3.Nodes.Add(NextChildNode2); //Child node (parent is ChildNode3) treeView1.ExpandAll(); } #endregion private void classement(object sender, EventArgs e) { GetExtensions(); if (!(txCible.Text=="")) { string cible_dir_path = txCible.Text + @"Dossier de recuperation"; if (!System.IO.Directory.Exists(cible_dir_path)) { System.IO.Directory.CreateDirectory(cible_dir_path); } for (int index = 0; index < this.ExtList.Items.Count; index++) { if (this.ExtList.GetItemCheckState(index) == CheckState.Checked) { string cible_dir_path1 =cible_dir_path + @"dossier de type " + ExtList.Items[index].ToString().Trim(); System.IO.Directory.CreateDirectory(cible_dir_path1); } } MessageBox.Show("fin création des dossiers de récupération"); rangement(cible_dir_path); } else { MessageBox.Show("veuillez choisir un dossier cible pour la création du dossier de recupération"); } } private void GetExtensions() { Dictionary<String, String> extensions = new Dictionary<string, string>(); for (Int32 index = 0; index < this.ExtList.Items.Count; index++) { if (this.ExtList.GetItemCheckState(index) == CheckState.Checked) { extensions.Add(index.ToString(),ExtList.Items[index].ToString().Trim()); //MessageBox.Show(ExtList.Items[index].ToString().Trim()); } this.extensionsList=extensions; } } } }
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.