Spisie treści
Pomimo współpracy z Bazy danych To bardzo dobrze i oszczędza nam dużo pracy przy tworzeniu zapytań i powiązaniu rekordów, są chwile, kiedy musimy generować pliki, ponieważ nie mamy serwera Baza danych dostępne, a może dlatego, że nie musimy zapisywać rekordu, ale niepowiązany zestaw danych.Zarządzanie plikami to obszar, który wielu nadal uważa za złożony lub być może przestarzały, jednak jest to niepoprawne, generowanie plików ma kluczowe znaczenie w rozwoju systemów i aplikacji. Plik może wahać się od generowania .tekst w szczególności z niektórymi liniami, aż do wygenerowania dużych .xml że możemy zdefiniować konfigurację.
Aby obsłużyć wszystko, co wiąże się z tworzeniem pliku w systemie, Jawa licz na klasę Plik w ramach pakietu bibliotecznego do obsługi danych wejściowych i wyjściowych java.io. Ta klasa dostarcza nam różnych metod, które pozwalają nam wykonywać operacje od tworzyć i usuwać pliki, tworzyć katalogi, sprawdzać uprawnienia itp..
Zanim zobaczymy w praktyce, jak możemy użyć klasy do wykonywania operacji na plikach, musimy zrozumieć, że wykonują one niektóre ze swoich głównych metod, dzięki temu będziemy mieli teoretyczną podstawę, do której możemy się udać, gdy pojawi się konkretny problem, który wymaga obsługa plików w naszych programach:
istnieje ()Ta metoda daje nam odpowiedź logiczną o istnieniu określonego pliku w katalogu, który określamy podczas jego wywoływania, oczywiście zwraca prawdę lub prawdę, jeśli plik zostanie znaleziony, i fałsz lub fałsz, jeśli tak nie jest.
getCanonicalPath ()Ta metoda zwraca pełną nazwę wraz ze ścieżką do pliku, bardzo ważne jest uzyskanie bezwzględnej pozycji naszego pliku w systemie, w którym wykonujemy nasz program.
pobierzNazwę ()W przeciwieństwie do poprzedniej metody zwraca tylko względną i krótką nazwę pliku, to znaczy bez uwzględniania adresu lub folderu, w którym się znajduje.
można przeczytać ()Ta metoda pozwala nam zweryfikować, czy mamy uprawnienia do odczytu pliku, bardzo ważne jest sprawdzenie, czy możemy odczytać plik przed rozpoczęciem z nim operacji, w ten sposób możemy zredukować wyjątki i zaoszczędzić zasoby systemowe.
potrafi pisać ()To kolejna metoda, która pomaga nam zweryfikować uprawnienia do plików podczas stosowania jej na instancji klasy Plik poinformuje nas, czy możemy napisać odpowiedni plik.
długość ()Ta metoda jest jedną z najbardziej przydatnych, ponieważ pozwala nam poznać rozmiar pliku, co jest ważnym sprawdzeniem podczas przetwarzania.
isPlik ()Wreszcie ta metoda pozwala nam wiedzieć, czy oceniamy plik, czy katalog, więc będziemy wiedzieć, czy pracujemy nad pożądaną strukturą.
ten tworzenie pliku Jest to proces, w którym piszemy w systemie, w którym działa nasz program. Jest różnica między zapisem do pliku a zapisem wewnątrz pliku, pierwsza z nich mówi nam, że generujemy plik w systemie, ale niekoniecznie dodaliśmy do niego zawartość; Z drugiej strony druga mówi nam, że dodajemy zawartość do istniejącego pliku.
Mogą się zastanawiać, dlaczego chcemy pusty plik, pusty plik nie jest bezużyteczny, może być częścią większego procesu w aplikacji, na przykład metoda tworzy plik, a po wyniku procesu inna metoda zajmuje się dodawaniem dane do niego. Może to być również istotne w walidacjach, gdzie generujemy pliki tymczasowe, aby wskazać programowi, w jakiej fazie procesu się znajdujemy itp.
Zobaczmy poniżej mały kod, w którym generujemy pusty plik płaski.
import java.io *; importuj plik java.io.; public class CreateFiles {public static void main (String [] argv) wyrzuca IOException {if (argv.length == 0) {System.err.println ("Musisz wprowadzić nazwę według parametru"); System.wyjście (1); } for (String nazwa pliku: argv) {new File (nazwa pliku) .createNewFile (); }}}
Widzimy, że pierwszą rzeczą, którą robimy, jest import klas java.io aby móc uzyskać dostęp do obsługi wyjątków za pomocą IOException, następnie importujemy klasę java.io.Plik co pozwala nam bezpośrednio manipulować plikami.
Następnie tworzymy naszą klasę i jej metodę Główny Wskazujemy, że otrzyma argumenty, robimy to w celu dynamicznego wskazywania nazw plików. Ponieważ potrzebujemy nazwy, robimy małą walidację, która wskazuje, że jeśli nazwa pliku nie zostanie odebrana, zostanie ona poproszona o jej umieszczenie, a program zostanie zakończony. Na koniec dla każdego otrzymanego argumentu utworzymy nowy plik, z tym co robimy jest nową instancją klasy Plik i metodą utwórzNowyPlik () generujemy plik w systemie.
Musimy mieć świadomość, że jeśli nasz program nie ma wystarczających uprawnień do utworzenia pliku w swoim katalogu, otrzymamy błąd. Bez zbędnych ceregieli zobaczmy, jak wygląda nasz program, gdy uruchomimy go na konsoli:
POWIĘKSZAĆ
Możemy zobaczyć, jak działała nasza początkowa walidacja, a kiedy przekazaliśmy nazwę pliku, który został wygenerowany, aby zweryfikować tę ostatnią, po prostu wykonaliśmy reż naszego katalogu iw ten sposób weryfikujemy istnienie pliku.Inną z najczęstszych operacji podczas pracy z plikami po zapisaniu i usunięciu jest zmiana nazwy, ponieważ w Jawa Musimy postępować zgodnie z procesem, który może wydawać się skomplikowany, ale jak zobaczymy na przykładzie towarzyszącym wyjaśnieniu, jest to coś całkiem łatwego do zrozumienia.
Jak to zrobić?Zmień nazwę pliku w Jawa wymaga dwóch obiektów typu Plik, pierwszy będzie zawierał plik, którego nazwę chcemy zmienić, a drugi będzie zawierał nową nazwę pliku, po spełnieniu tych warunków musimy wywołać metodę zmień nazwę na () nad istniejącym obiektem pliku i przekaż mu nowy obiekt z nową nazwą.
Zobaczmy kod, którego potrzebujemy, aby wykonać operację zmiany nazwy na naszym pliku:
import java.io *; importuj plik java.io.; public class RenameFiles {public static void main (String [] argv) wyrzuca IOException {File FirstObject = nowy plik ("NewFile.txt"); Drugi obiekt pliku = nowy plik ("PlikZNowąNazwą.txt"); FirstObject.renameTo (SecondObject); }}
Importujemy odpowiednie klasy i pakiety, zachowując to samo, co w poprzednim przykładzie.
Wewnątrz metody Główny () stworzymy nasz pierwszy obiekt i wstawimy nazwę pliku, który utworzyliśmy w poprzednim przykładzie, w tym przypadku jest to PlikNowy.txt. Następnie tworzymy drugi obiekt o nowej nazwie, którą chcemy dla naszego pliku, w wybranym przez nas przykładzie PlikZNowąNazwą.txt.
Wreszcie do pierwszego obiektu stosujemy metodę zmień nazwę na () a jako argument lub parametr przekazujemy mu drugi obiekt, który ma nową nazwę dla naszego pliku. Zobaczmy, jak to wygląda na konsoli po uruchomieniu naszego kodu:
POWIĘKSZAĆ
Zauważyliśmy, jak zmienił się folder i teraz odzwierciedla nasz nowy plik w porównaniu z wykonaniem pierwszego przykładu tworzenia pliku.Wreszcie zobaczymy inną operację, która jest dość powszechna podczas pracy z plikami, a mianowicie usuwanie, jest to prawdopodobnie jedna z najprostszych, ponieważ musimy tylko znać nazwę pliku, sprawdzić, czy istnieje, a następnie przejść do usuwania to za pomocą metody kasować () gdzie przekażemy nazwę danego pliku. Zobaczmy w poniższym kodzie, jak to osiągamy:
import java.io *; importuj plik java.io.; public class DeleteFile {public static void main (String [] argv) {delete ('FileWithNewName.txt'); } public static void delete (String filenameDelete) {spróbuj {File file = new File (filenameDelete); if (! file.exists ()) {System.err.println ("Plik" + filenameDelete + "nie istnieje w tym katalogu"); powrót; } if (file.delete ()) System.err.println ("** Plik" + fileNameDelete + "został usunięty **"); else System.err.println („Nie można usunąć pliku:” + filenameDelete); } catch (SecurityException e) {System.err.println ("Nie można usunąć pliku:" + DeleteFileName + "(" + e.getMessage () + ")"); }}}
Widzimy, że ten program jest trochę bardziej rozbudowany niż poprzednie, to dlatego, że stworzyliśmy a funkcja wielokrotnego użytku W przypadku usuwania plików, w których najpierw sprawdzamy, czy plik istnieje, a następnie przystępujemy do jego usunięcia, tutaj sprawdzimy, czy rzeczywiście został usunięty, w przeciwnym razie informujemy użytkownika, że pliku nie można usunąć z systemu plików.
W konsoli możemy zobaczyć, jak udało nam się pomyślnie wykonać tę operację, do tego używamy pliku, którego nazwę zmieniliśmy w poprzednim przykładzie, więc gdy zrobimy listę zawartości folderu, zobaczymy odzwierciedlenie zmiany:
POWIĘKSZAĆ
Na koniec spróbujemy ponownie usunąć, abyśmy mogli zaobserwować działanie walidacji:POWIĘKSZAĆ
Na tym kończymy ten samouczek, nauczyliśmy się generować pliki, oprócz wykonywania dwóch najczęściej używanych działań do manipulacji plikami, dzięki temu możemy włączyć te techniki do naszych programów i aplikacji, korzystając z zalet tego typu technik może nam przynieść.