Laden...

folder/filecopy rekursiv klappt nicht

Erstellt von Snackinishot vor 10 Jahren Letzter Beitrag vor 10 Jahren 1.174 Views
Thema geschlossen
S
Snackinishot Themenstarter:in
3 Beiträge seit 2013
vor 10 Jahren
folder/filecopy rekursiv klappt nicht

Hi Leute,

hoff mach hier nichts falsch durch meinen beitrag. ^^
Hab folgendes Problem, ich will ein rekursives folder/file kopier-programm schreiben (wie der Titel schon sagt) und bin halt noch ein kompletter amateur.
ich finde einfach nicht raus wo und was ich falsch gemacht hab, ich hoffe ihr könnt mir mit rat und tat zur seite stehen. :3


private bool CopyFolder_Click(object sender, EventArgs e) 
        {
            return Copy(textBoxSource.Text, textBoxZiel.Text);
        }
        public bool Copy(string SourcePath, string DestinationPath) 
{
            try {
                if(Directory.Exists(SourcePath)) 
{
                    if(Directory.Exists(DestinationPath) == false) 
{
                        Directory.CreateDirectory(DestinationPath);
                    }
                    foreach(string file in Directory.GetFiles(SourcePath)) 
{
                        FileInfo fileInfo = new FileInfo(file);
                        fileInfo.CopyTo(string.Format(@"{0}\{1}", DestinationPath, fileInfo.Name), true);
                    }
                    foreach(string drs in Directory.GetDirectories(SourcePath)) 
{
                        DirectoryInfo directoryInfo = new DirectoryInfo(drs);
                        if(Copy(drs, DestinationPath + directoryInfo.Name) == false) 
{
                            return false;
                        }
                    }
                }
                return true;
            } catch(Exception) 
{
                return false;
            }
        }
    }
}

2.207 Beiträge seit 2011
vor 10 Jahren

Hallo Snackinishot,

erstmal: Was bekommst du denn für einen Fehler? Wo hakt es? Was hast du probiert?

Ansonsten schau dir mal:

[Snippet] Verzeichnisse und Dateien rekursiv durchlaufen

an.

Das Beispiel sit wirklich genial.

Gruss

Coffeebean

S
Snackinishot Themenstarter:in
3 Beiträge seit 2013
vor 10 Jahren

es wird im code kein fehler ausgegeben. deswegen bin ich so ratlos ^^
beim testen wird einfach nichts kopiert weder die subdirectories noch irgentwelche files.
das snippet sieht vielversprechen aus ich werds mir gleich mal näher anschauen.
danke schonmal dafür =)

2.207 Beiträge seit 2011
vor 10 Jahren

Hallo Snackinishot,

dabei sollte dir auch der Debugger helfen.

Gruss

Coffeebean

F
174 Beiträge seit 2007
vor 10 Jahren

Hallo Snackinishot,

du solltest dir auch folgenden Beitrag durchlesen:
[Tipp] Anfängerfehler == true / == false

5.658 Beiträge seit 2006
vor 10 Jahren

es wird im code kein fehler ausgegeben. deswegen bin ich so ratlos ^^

Daß kein Fehler ausgegeben wird, ist wirklich nicht verwunderlich, wenn man die gesamte Methode in einem Try/Catch einschließt, und dann eine auftretende Exception einfach ignoriert:

catch(Exception)  
{  
   return false;  
}  

Hier scheinen eindeutig die wichtigsten Grundlagen zu fehlen, da nützen auch keine Snippets, sondern :rtfm:, 🛈 oder 📗

Christian

Weeks of programming can save you hours of planning

S
Snackinishot Themenstarter:in
3 Beiträge seit 2013
vor 10 Jahren

gut dann heißt es wohl büffeln >.<
danke an alle _ aber ich denke mir fehlen wirklich viel zu viel grundlagen
ich meld mich mit meinem neuen code in ein paar tagen nochmal ^^
mal sehen obs dann klappt oder noch schlimmer aussieht

Hinweis von herbivore vor 10 Jahren

Mit dem Debugger solltest du etwaige Fehler alleine finden. Insofern ist es nicht nötig, dass du deinen überarbeiten Code postest.

Der Vorsatz zu büffeln ist sehr löblich. Bitte beachte in diesem Zusammenhang auch [Hinweis] Wie poste ich richtig? Punkt 1.1.1 (und 5).

Thema geschlossen