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

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

от jeromy_ruecker , в категории: Java , 2 года назад

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

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

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

от josie , год назад

@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, если не удалось определить тип файла. В этом случае можно попробовать определить тип файла по его расширению или анализировать его содержимое вручную.

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

от elda , 10 месяцев назад

@jeromy_ruecker 

Для получения типа файла в Java можно использовать класс java.nio.file.Files.


Пример:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;

public class FileTypeExample {
    public static void main(String[] args) {
        String filePath = "path_to_your_file";
        
        File file = new File(filePath);
        
        try {
            String fileType = Files.probeContentType(Paths.get(file.getAbsolutePath()));
            System.out.println("File type: " + fileType);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}


Необходимо заменить "path_to_your_file" на путь к вашему файлу.


Метод Files.probeContentType(Path) возвращает MIME-тип файла на основе его расширения. Если тип файла не может быть определен, метод вернет значение null.