Java FilenameFilter

Java FilenameFilter
Funkcję ListFiles () w Javie można zastosować do wyszukiwania nazw plików za pomocą interfejsu FileNameFilter. Instancje pliku w lokalizacji są zwracane, jeśli ListFiles () zostanie wywołany bez żadnych argumentów. Możemy pobrać część tych instancji, jeśli podamy filtr jako argument. Musimy zdefiniować funkcję Accept (), aby utworzyć instancję dziedziczącą FilenameFilter. Ścieżka domowa pliku jest reprezentowana przez jednostkę Dir i jego tytuł przez nazwę pliku. Plik jest prezentowany w gromadzeniu instancji plików z wywołania do ListFiles (), jeśli akceptuje () daje prawdziwie. W przeciwnym razie wywołanie ListFiles nie dostarczy pliku ().

Zainstaluj Java

Przed rozpoczęciem z naszego przykładu Java otwieramy aplikację Shell z obszaru aplikacji maszyny Linux. Dzieje się tak, ponieważ używamy aplikacji konsoli powłoki do instalacji środowiska środowiska wykonawczego Java. Do instalacji konieczne jest użycie pakietu „apt” z uprawnieniami „sudo” w instrukcji „instaluj”. Do instalacji środowiska środowiska wykonawczego Java użyj nazwy pakietu „DEFAULT-JRE”, jak przedstawiono:

Przykład

Używamy naszego pierwszego przykładu Java, aby pokazać, w jaki sposób interfejs FilenameFilter można użyć do wyświetlenia wszystkich konkretnych plików z określonego katalogu naszego systemu Linux. W tym celu musimy mieć określone pliki typu w katalogu roboczym. Najpierw tworzymy plik Java o nazwie „Filtr.java ”, który jest używany do kodowania. Następnie tworzymy dwa pliki tekstowe, cześć.TXT i nowy.odpowiednio txt. Wszystkie trzy pliki są tworzone za pomocą zapytania „dotyk”. Teraz użycie instrukcji „LS” przedstawia wszystkie trzy pliki w folderze domowym.

Zaczynając od pierwszego przykładowego kodu Java, sprawiamy, że jest to tak proste, jak to możliwe. Zaczyna się od importu głównych pakietów Java w celu korzystania z obsługi plików. Importujemy plik i klasę IoExecption Java.Pakiet IO wraz z importem interfejsu FilenameFilter, które są wykorzystywane do uzyskania listy określonych plików. Po pierwsze, zaimportowanie wszystkich wymaganych pakietów, tworzymy klasę „testuj” demo i dodajemy do niej implementację funkcji Main (). Gdy program rozpoczyna wykonanie, obiekt pliku „FOBJ” jest generowany za pomocą klasy plik (.

Interfejs fileNameFilter () jest tu używany przez utworzenie obiektu „TF”, który służy do filtrowania nazw plików. Wbudowana funkcja logiczna „Akceptuj” jest tutaj, aby wyszukać i dopasować określone nazwy plików. Używa katalogu i nazwy pliku do wyszukiwania w jego parametrach z klasy plików. Podczas gdy nazwy wszystkich dopasowanych wzorów są konwertowane na dolną obudowę za pomocą funkcji TOLOWERCASE () i są zapisywane na zmienną ciągu „N”. Oświadczenie „If” jest odrzucone, aby wykonać główną rzecz - sprawdzanie sufiksu pliku. Wykorzystuje zmienną wartość „N”, aby dopasować jej koniec do określonego wzorca za pomocą funkcji „Endswith” Java.

Jeśli znaki końcowe zmiennej wartości „N” pasują do określonego wzoru nazwy pliku, zwraca „true”. W przeciwnym razie zwraca fałsz. Określamy „.txt ”, aby sprawdzić wszystkie pliki tekstowe. Tymczasem tworzymy obiekt tablicy „LF” za pomocą klasy (). I przechowujemy wszystkie dopasowane pliki w IT za pomocą funkcji List Files () Java, która jest wywoływana przez obiekt pliku „FOBJ”, przekazując obiekt filtra tekstowego „TF”. Pętla „for” jest inicjowana do końca tablicy „LF” dla każdego pliku „F”. Instrukcja „If” sprawdza, czy plik „F” jest katalogiem lub prostym plik za pośrednictwem funkcji isDirectory (). Wyświetla wynikową ścieżkę zgodnie z tym.

W tym celu wykorzystuje funkcję println () „systemu.OUT „klasa najpierw w instrukcji„ If ”, aby wyświetlić„ katalog ”lub„ plik ”. Następnie używamy systemu.na zewnątrz.instrukcja println () ponownie, aby uzyskać ścieżkę nazwy do pliku za pomocą funkcji getCanonicalPath (). Zapisujemy ten plik Java przed procesem wykonania.

Po wykonaniu pliku Java dla „.Wzorce plików txt ”otrzymujemy w sumie 2 ścieżki wymienione dla plików typów tekstów w katalogu roboczym domowym.

Możesz także użyć tej samej metody do dopasowania i wyświetlania dopasowanych wzorów nazwy plików w folderze innym niż bieżący katalog roboczy. Powiedzmy, że mamy te same dwa pliki tekstowe w folderze dokumentów naszego systemu zgodnie z zapytaniem „LS”.

Teraz musisz zaktualizować ścieżkę do katalogu, w którym dopasowujemy lub przeszukujemy wzór nazwy pliku. Dlatego podajemy ścieżkę do folderu dokumentów i zapisujemy ją.

Po wykonaniu ponownie wyświetla ścieżkę do 2 plików tekstowych - Hello.TXT i nowy.tekst.

W bardzo podobny sposób możesz również wyszukać inne typy plików. Powiedzmy, że chcemy szukać wszystkich „.Pliki Java ”w katalogu domowym naszego systemu Linux. Zastępować ".txt ”z„.Jawa".

Wykonanie pokazuje ścieżkę do pliku Java „Filtr.Java ”, nad którymi pracowaliśmy.

Czasami wzór, którego szukamy, dopasowuje nazwę katalogu. Na przykład dodajemy wzór „S” do wyszukiwania w folderze domowym.

W zamian wykonanie pokazuje ścieżki do folderów w katalogu domowym, który zawiera „S” na ich końcu.

Wniosek

Wyjaśniliśmy użycie interfejsu FileNameFilter () Java do filtrowania wszystkich ścieżek plików, które pasują do określonego wzorca w naszym artykule. W tym celu upewniliśmy się, że środowisko Java jest w pełni skonfigurowane w naszym systemie operacyjnym Linux. Wyjaśniliśmy również przykład Java za pomocą interfejsu FileNameFilter, aby utworzyć obiekt filtra, aby odfiltrować określone ścieżki plików zawierające wzór. Korzystając z tego przykładu, odfiltrowaliśmy pliki tekstowe, pliki Java i określone katalogi z katalogu roboczego domowego i innych folderów.