logo

Java filtillägg

De Filtillägg är suffixet bifogat till en datorfil. Det kan lätt identifieras eftersom det visas direkt i filnamnet efter en punkt (.)

Tänk till exempel på ett filnamn Demo.java, här är filnamnet Demo och .java är filtillägget som representerar typen av fil.

I det här avsnittet kommer vi att lära oss hur man får filförlängning genom ett Java-program .

Java-filklass

  • Java-filklassen definieras i detta paket. Ett annat nytt Java-paket som är tillgängligt för att utföra in-/utdataoperationer är java.nio-paketet. Det introduceras i JDK4.
  • Den används för att utföra olika filoperationer i Java-programmet.
  • Klassen File har olika metoder och konstruktorer som arbetar med filsökvägsnamnet, byta namn på en fil, ta bort en fil, skapa en ny fil, etc.
  • För att använda dessa metoder och konstruktorer måste en instans av klassen File skapas.
  • Filklassinstanser är oföränderliga, därför kan den inte ändras när en instans väl har skapats med ett specifikt sökvägsnamn.

Hämta filtillägg

Det finns två sätt att få filtillägg i Java:

Följande program använder klassen File för att identifiera förlängningen av den angivna filen som vi ger som indata.

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!'); } } } 

Produktion:

Java filtillägg

I ovanstående Java-program,

  1. Ett exempel f av klassen File från detta paketet skapas. Det skapar en instans av sökvägen som skickas till konstruktorn.
  2. På nästa rad används en if-sats för att kontrollera om filen finns eller inte. Om det är sant kommer det att skapa variablerna för att lagra filtyp, filnamn och filtillägg.
  3. lastIndexOf() metod returnerar den sista förekomsten av tecknet som skickats som ett argument. substring() metod används för att få filtillägget efter punkt (.) probeContentType() metod från nio paketet returnerar en sträng av innehållstyp. Det kan kasta en IOException , därför specificeras den i ett försöksfångstblock.
  4. Och slutligen visas filtillägget och innehållstypen på konsolen med hjälp av en skriva ut()

Använder Apache Commons IO

Apache Commons IO är komponenten i Apache som kommer från Java API. De tillhandahåller flera metoder för att utföra olika operationer på filer utan att skapa ett objekt i filen. I följande program har vi använt FilenameUtils.getExtension() metod för att få filtillägget.

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)); } } 

Produktion:

 Extension: txt 

I ovanstående Java-program, getExtension() metod för FilnamnUtils klass används för att få filtillägget utan att skapa filobjektet.