Как получить тип файла в Java?

Пользователь

от jeromy_ruecker , в категории: Java , 6 месяцев назад

Как получить тип файла в Java?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от josie , 3 месяца назад

@jeromy_ruecker 

В Java можно использовать класс java.nio.file.Files для получения типа файла. В частности, метод Files.probeContentType(Path) возвращает MIME-тип файла, определенный по его содержимому. Например, файл с расширением ".txt" может иметь MIME-тип "text/plain".


Пример кода:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;

public class Main {
  public static void main(String[] args) throws Exception {
    Path filePath = Paths.get("/path/to/file.txt");
    String mimeType = Files.probeContentType(filePath);
    System.out.println(mimeType); // "text/plain"
  }
}


Обратите внимание, что метод Files.probeContentType может вернуть null, если не удалось определить тип файла. В этом случае можно попробовать определить тип файла по его расширению или анализировать его содержимое вручную.