Jak sprawdzić czy w folderze są jakieś pliki?

0

Jak sprawdzić czy w folderze są jakieś pliki. Potem jeśli są program wyświetla ostrzeżenie i pyta się czy kontynuować wykonywanie programu. Jeśli użytkownik odpowie NIE, to jak przerwać dalsze wykonywanie się kodu?

1

obiekt DirectoryInfo i jego metoda GetFiles(), zwraca tablice znalezionych plikow w folderze, typu FileInfo[] - jeżeli tablica będzie pusta tzn że w folderze nie ma plików.
http://msdn.microsoft.com/en-us/library/system.io.directoryinfo.aspx

Jeżeli są to wyświet np. MessageBox z dwoma klawiszami Tak i Nie (YesNo) i pytaniem czy kontynuować bo w folderze znaleziono pliki. Metoda Show() obiektu MessageBox zwraca typ wyliczeniowy DialogResult, wystarczy go porównać czy będzie równy z DialogResult.No jeżeli tak to przerwac to co mialo być zrobione na pustym folderze.
http://msdn.microsoft.com/en-us/library/system.windows.forms.messagebox.aspx
http://msdn.microsoft.com/en-us/library/0x49kd7z.aspx

wartosci typu DialogResult:
http://msdn.microsoft.com/en-us/library/system.windows.forms.dialogresult.aspx

PS. Nie wykluczone że to można prościej, pewnie starzy wyjadacze znają milion innych sposobów na ten problem ;)

0
 
         infoOkataloguDI = new DirectoryInfo(sciezkaDoFolderuAudioBazy);
                if (infoOkataloguDI.GetFiles() != null)
                {
                    MessageBox.Show("Nagrania dla tego działo już istnieją.");
                    buttonUtworzNagrania.Enabled = false;
                }
                else
                {
                    buttonUtworzNagrania.Enabled = true;
                }
 if (infoOkataloguDI.GetFiles() != null)

czy dobrze zapisałem warunek, że tablica nie jest pusta?

0

Raczej nie. Metoda DirectoryInfo.GetFiles() zwraca raczej pustą tablicę, a nie null. Pusta tablica to taka, w której liczba elementów (Length) równa się 0.

1 użytkowników online, w tym zalogowanych: 0, gości: 1