The Ekstenzija datoteke je sufiks priložen računalnoj datoteci. Može se lako prepoznati jer se izravno pojavljuje u nazivu datoteke nakon točke (.)
Na primjer, razmotrite naziv datoteke Demo.java, ovdje je naziv datoteke Demo, a .java je ekstenzija datoteke koja predstavlja vrstu datoteke.
U ovom odjeljku naučit ćemo kako dobiti ekstenziju datoteke kroz Java program .
Java klasa datoteke
- Klasa Java datoteke definirana je u ovaj paket. Još jedan novi Java paket dostupan za izvođenje ulazno/izlaznih operacija je paket java.nio. Predstavljen je u JDK4.
- Koristi se za izvođenje raznih operacija s datotekama u Java programu.
- Klasa File ima različite metode i konstruktore koji rade s nazivom staze datoteke, preimenovanjem datoteke, brisanjem datoteke, stvaranjem nove datoteke itd.
- Za korištenje ovih metoda i konstruktora potrebno je kreirati instancu klase File.
- Instance klase datoteka su nepromjenjive, stoga kada se instanca kreira s određenim imenom putanje, ne može se promijeniti.
Dobivanje ekstenzije datoteke
Postoje dva načina za dobivanje ekstenzije datoteke u Javi:
Sljedeći program koristi klasu File za identifikaciju ekstenzije navedene datoteke koju dajemo kao ulaz.
FileTypeDemo.java
import java.io.*; import java.nio.file.Files; public class FileTypeDemo { /* Driver Code */ public static void main(String ar[]) { /* declaring a File instance with path of the File */ File f = new File('C:/Users/WIN 8.1/Desktop/demo.txt'); /* If file exists */ if(f.exists()) { String fType = 'Undetermined'; String fName = f.getName(); String extension = ''; int i = fName.lastIndexOf('.'); if (i > 0) { extension = fName.substring(i + 1); } try { fType= Files.probeContentType(f.toPath()); } catch (IOException ioException) { System.out.println('Cannot determine type of file '+ f.getName()+ ' due to the exception: '+ ioException); } /* Print the file extension. */ System.out.println('File Extension used is: ' + extension + ' and is probably ' + fType); } else { System.out.println('File does not exist!'); } } }
Izlaz:
U gornjem Java programu,
- Primjer f klase File iz ovaj paket je kreiran. Stvara instancu staze proslijeđene konstruktoru.
- U sljedećem retku if naredba se koristi za provjeru postoji li datoteka ili ne. Ako je istina, stvorit će varijable za pohranu vrste datoteke, naziva datoteke i ekstenzije datoteke.
- I na kraju, ekstenzija datoteke i vrsta sadržaja prikazuju se na konzoli pomoću a ispis()
Korištenje Apache Commons IO
Apache Commons IO je komponenta Apachea izvedena iz Java API-ja. Oni pružaju više metoda za izvođenje različitih operacija na datotekama bez stvaranja objekta datoteke. U sljedećem programu koristili smo FilenameUtils.getExtension() metoda za dobivanje ekstenzije datoteke.
GetFileExtensionApache,java
import java.io.IOException; import org.apache.commons.io.FilenameUtils; public class GetFileExtensionApache { /* Driver Code */ public static void main(String []args) { try { usingFilenameUtils(); } catch(IOException e) { System.out.println(e.getMessage()); } } public static void usingFilenameUtils() throws IOException { String path = 'C:/Users/WIN 8.1/Desktop/demo.txt'; System.out.println('Extension: ' + FilenameUtils.getExtension(path)); } }
Izlaz:
Extension: txt
U gornjem Java programu, getExtension() metoda FilenameUtils klasa se koristi za dobivanje ekstenzije datoteke bez stvaranja objekta datoteke.