piątek, 18 marca 2011

[C#] Tworzenie, usuwanie, przenoszenie oraz uzyskiwanie informacji o plikach i folderach.

          Zdecydowana większość dostępnych programów wykorzystuje obsługę plików. Najczęściej służą one jako pliki konfiguracyjne przechowywujące ustawienia danej aplikacji. Innym przykładem jest zapisywanie stanu aplikacji lub zapisywanie w odrębnym pliku wskazanym przez użytkownika wyników jego pracy z programem. Równie ważny jest także odczyt z pliku. Jeżeli do tej pory nie miałeś przyjemności korzystania z obsługi plików w swoim programie w języku C# prędzej czy później konieczność ta musiała nadejść. W poniższym artykule postaram się przedstawić podstawowe operacje tworzenia, modyfikowania, usuwania, kopiowania oraz przenoszenia plików i folderów znajdujących się na dysku. Jeżeli chodzi o wczytywanie plików, lub ich otwieranie w specjalnym oknie eksploratora Windows, zostanie to przedstawione w kolejnych artykułach.

1. Tworzymy nowy projekt w Visual Studio.
File->New->Project->Windows Form Application 

2. Następnie nanosimy na formę:
  • 8 przycisków (Button) 4 dla folderów oraz 4 dla plików,
  • 1 pole tekstowe (TextBox), do którego wpisywać będziemy adresy naszych plików/folderów.

Powinniśmy otrzymać poniższy rezultat:


3. W kolejnym kroku dodajemy kod obsługi kliknięcia do każdego przycisku. Znajduje się on poniżej. Nazwy poszczególnych funkcji są zbierzne z nazwami przycisków znajdującymi się na powyższej formie.



        private void plikUtwoz_Click(object sender, EventArgs e)
        {
            FileInfo file = new FileInfo(textBox1.Text);
            file.Create().Close();
        }

        private void plikUsun_Click(object sender, EventArgs e)
        {
            FileInfo file = new FileInfo(textBox1.Text);
            file.Delete();
        }

        private void plikPrzenies_Click(object sender, EventArgs e)
        {
            FileInfo file = new FileInfo(textBox1.Text);
            file.MoveTo(@"d:/"+file.Name);
        }

        private void plikInformacje_Click(object sender, EventArgs e)
        {
            FileInfo file = new FileInfo(textBox1.Text);
            MessageBox.Show(file.Name + file.CreationTime 
            + file.Extension + file.Length.ToString(),"Informacje");
        }

        private void folderUtworz_Click(object sender, EventArgs e)
        {
            DirectoryInfo folder = new DirectoryInfo(textBox1.Text);
            folder.Create();
        }

        private void folderUsun_Click(object sender, EventArgs e)
        {
            DirectoryInfo folder = new DirectoryInfo(textBox1.Text);
            folder.Delete();
        }

        private void folderPrzenies_Click(object sender, EventArgs e)
        {
            DirectoryInfo folder = new DirectoryInfo(textBox1.Text);
            folder.MoveTo(@"d:/" + folder.Name);
        }

        private void folderInformacje_Click(object sender, EventArgs e)
        {
            DirectoryInfo folder = new DirectoryInfo(textBox1.Text);
            MessageBox.Show(folder.Name 
            + folder.CreationTime, "Informacje");
        }
  
          W powyższych funkcjach wykorzystaliśmy klasy FileInfo oraz DirectoryInfo. Podobny efekt możemy uzyskać dzięki klasom statycznym File oraz Directory.

Brak komentarzy:

Prześlij komentarz