Dosya uzantısı bir bilgisayar dosyasına eklenen son ektir. Noktadan (.) sonra doğrudan dosya adında göründüğü için kolayca tanımlanabilir.
Örneğin, Demo.java dosya adını düşünün; burada dosya adı Demo'dur ve .java, dosyanın türünü temsil eden dosya uzantısıdır.
Bu bölümde öğreneceğiz bir Java programı aracılığıyla dosyanın uzantısı nasıl alınır .
Java Dosya Sınıfı
- Java Dosyası sınıfı şurada tanımlanmıştır: Bu paket. Giriş/çıkış işlemlerini gerçekleştirmek için kullanılabilen bir diğer yeni Java paketi ise java.nio paketidir. JDK4'te tanıtıldı.
- Java programında çeşitli dosya işlemlerini gerçekleştirmek için kullanılır.
- File sınıfı, dosya yolu adıyla çalışan, bir dosyayı yeniden adlandıran, bir dosyayı silen, yeni bir dosya oluşturan vb. ile çalışan farklı yöntemlere ve yapıcılara sahiptir.
- Bu yöntemleri ve yapıcıları kullanmak için File sınıfının bir örneğinin oluşturulması gerekir.
- Dosya sınıfı örnekleri değiştirilemez, bu nedenle belirli bir yol adıyla bir örnek oluşturulduktan sonra değiştirilemez.
Dosya Uzantısını Alma
Java'da dosya uzantısını almanın iki yolu vardır:
Aşağıdaki program, girdi olarak verdiğimiz belirtilen dosyanın uzantısını tanımlamak için File sınıfını kullanır.
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!'); } } }
Çıktı:
Yukarıdaki Java programında,
- Bir örnek F File sınıfından Bu paket oluşturulur. Yapıcıya iletilen yolun bir örneğini oluşturur.
- Bir sonraki satırda dosyanın var olup olmadığını kontrol etmek için if ifadesi kullanılır. Doğruysa dosya türünü, dosya adını ve dosya uzantısını depolamak için değişkenler oluşturacaktır.
- Son olarak, dosya uzantısı ve içerik türü konsolda bir Yazdır()
Apache Commons IO'yu kullanma
Apache Commons IO, Apache'nin Java API'sinden türetilen bileşenidir. Dosyanın bir nesnesini oluşturmadan dosyalar üzerinde farklı işlemler gerçekleştirmek için birden fazla yöntem sağlarlar. Aşağıdaki programda kullandığımız DosyaadıUtils.getExtension() dosya uzantısını alma yöntemi.
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)); } }
Çıktı:
Extension: txt
Yukarıdaki Java programında, getExtension() yöntemi DosyaadıUtils class, dosya nesnesini oluşturmadan dosya uzantısını almak için kullanılır.