Announcement

Collapse
No announcement yet.

Unterodner mitkopiieren und in listbox ausgeben

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Unterodner mitkopiieren und in listbox ausgeben

    Hay ihr alle,

    Hab folgendes Problem:
    ich möche einen ordner mit unterordner kopieren, allerdings sollen alle kopierhinweise in einer listbox erscheinen.
    Ich habe es schon geschaft das ordner mit dateien und unterordnern kopiert wird, allerdings steht alles doppelt in der listbox und das darf es nicht.

    Help!

    Code:
    // Code in aus meiner Application                       
                           
    ______________________________
    
    //Ordner nach inhalt durchsuchen
                            DirectoryInfo di = new DirectoryInfo(Alt);
                            //
                            FileInfo[] fi = di.GetFiles();
                            // Dateien Kopieren
                            foreach (FileInfo file in fi)
                            {
                                file.CopyTo(Path.Combine(Neu, file.Name), overW);
                                string[] myList = new string[1];
                                myList[0] = "OK   |   " + Neu + @"\" + file.Name;
                                statusliste.Items.AddRange(myList);  
                            }
                            // Nach Unterordnern suchen
                            DirectoryInfo[] di2 = di.GetDirectories();
                            foreach (DirectoryInfo directory in di2)
                            {
                                // Unterordner Kopieren
                                string sPath = Neu + @"\" + directory.Name;
                                UnterOrdnerCopy(directory, sPath);
                                string[] myList = new string[1];
                                myList[0] = "OK   |   " + sPath + directory;
                                statusliste.Items.AddRange(myList);
                            }
    ______________________________________
    
            public void UnterOrdnerCopy(DirectoryInfo directory, string dcpath)
            {
                bool overW = false;
                if (schreibcheck.Checked == true)
                {
                    overW = true;
                }
                else
                {
                    overW = false;
                }
                // Unterordnerinfo zum Kopieren
                FileInfo[] fi = directory.GetFiles();
                // Wenn Ordner noch nicht vorhanden -> neu Erstellen
                if (!Directory.Exists(dcpath)) Directory.CreateDirectory(dcpath);
                // Dateien vom Ordner Kopieren
                foreach (FileInfo file in fi)
                {
                    file.CopyTo(Path.Combine(dcpath, file.Name), overW);
                    string[] myList = new string[1];
                    myList[0] = "OK   |   " + dcpath + @"\" + file.Name;
                    statusliste.Items.AddRange(myList);
                    
                    // Auf weitere Unterordner Prüfen
                    DirectoryInfo[] di2 = directory.GetDirectories();
                    foreach (DirectoryInfo directory1 in di2)
                    {
                        // Wenn es weitere Unterordner gibt, wird die Funktion
                        // CopyDownFolders() Rekursiv aufgerufen
                        string udipath = dcpath + @"\" + directory1.Name;
                        UnterOrdnerCopy(directory1, udipath);
                        string[] myList2 = new string[1];
                        myList[0] = "OK   |   " + directory;
                        statusliste.Items.AddRange(myList2);
                        
                    }
                }
            }
    Danke vorweg
    F60.2

    ----
    VS 2008
    Windows Forms Application
    ----

  • #2
    Sollte etwas fehlen füge ich es noch hinzu. ^^

    Comment


    • #3
      ok hat sich erledigt, es liegt nicht an der formel, sondern an der anordnung einer schleife in meiner applikation.

      Gruß

      F60.2

      Comment

      Working...
      X