Avatar billede jih Nybegynder
13. maj 2013 - 22:04 Der er 3 kommentarer og
1 løsning

Program laver mapper i forkerte steder

Hej,

jeg har lavet et lille program til at konvertere bmp filer til png filer. Jeg har 2 tekstfelter: txtInput og txtOutput, som indeholder mappenavn på henholdsvis hvor jeg kopierer fra og hvor jeg kopierer til. Disse er "styret" af en folderBrowserDialog.

Jeg har fundet en metode til at kopiere mappestrukturen fra input til output, siden jeg som regel har undermapper i input mappen.

Det virker som sådan også fint, men mit problem er at udover at gøre det, så laver den kopier af alle disse undermappe under hovedsmappen (txtOutput.Text), og jeg kan simpelthen ikke finde fejlen..

Min kode ligger her: http://pastebin.com/NYxwtwFj

På forhånd tak!
// jih
Avatar billede moddi100 Seniormester
13. maj 2013 - 22:27 #1
Fjern den sidste foreach i funktionen DirSearch(). Du gennemløber nemlig øverste mappe samt alle undermapper med funktionen:

// Top-mappe inklusiv undermapper
Directory.GetDirectories(txtInput.Text, "*", SearchOption.AllDirectories)

// Kun top-mappe
Directory.GetDirectories(txtInput.Text, "*", SearchOption.TopDirectoryOnly)


Som du kan se er der flere måder at anvende funktionen på, men det fungerer jo fint såfremt du bibeholder SearchOption.AllDirectories og så fjerner den sidste løkke, altså:

// Fjern mig
foreach (string d in Directory.GetDirectories(sDir))
{
    DirSearch(d);
}


Dokumentation: http://msdn.microsoft.com/en-us/library/ms143448.aspx
Avatar billede jih Nybegynder
13. maj 2013 - 22:37 #2
Problemet med det er bare at nu kopierer programmet ikke nogle filer. Det laver kun mappestrukturen, men den er så i orden nu :)

Idé?
Avatar billede jih Nybegynder
13. maj 2013 - 22:57 #3
Fandt ud af det, jeg skiftede bare

foreach (string f in Directory.GetFiles(sDir, "*.bmp"))


ud med

foreach (string f in Directory.GetFiles(sDir, "*.bmp", SearchOption.AllDirectories))


Tak for hjælpen, smid et svar :)
Avatar billede moddi100 Seniormester
13. maj 2013 - 23:26 #4
Svar :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester