gpt4 book ai didi

java - 在 Java 中识别特定文件类型的最佳方法是什么?

转载 作者:搜寻专家 更新时间:2023-11-01 02:51:52 28 4
gpt4 key购买 nike

我正在尝试使用以下方法通过 Java 识别特定文件类型。我需要在我的网络应用程序中实现这些东西。

package filetype;

import java.io.File;
import java.net.URLConnection;

final public class FileType
{
public static void main(String[] args)
{
File temp=new File("G:/mountain.jpg");
System.out.println(URLConnection.guessContentTypeFromName(temp.getAbsolutePath()));

temp=new File("G:/myFile.txt");
System.out.println(URLConnection.guessContentTypeFromName(temp.getAbsolutePath()));

temp=new File("G:/zipByJava.zip");
System.out.println(URLConnection.guessContentTypeFromName(temp.getAbsolutePath()));

temp=new File("G:/MLM/Login.aspx");
System.out.println(URLConnection.guessContentTypeFromName(temp.getAbsolutePath()));

temp=new File("G:/power_point.pptx");
System.out.println(URLConnection.guessContentTypeFromName(temp.getAbsolutePath()));

temp=new File("G:/excel_sheet.xlsx");
System.out.println(URLConnection.guessContentTypeFromName(temp.getAbsolutePath()));

temp=new File("G:/word_document.docx");
System.out.println(URLConnection.guessContentTypeFromName(temp.getAbsolutePath()));
}
}

它在控制台上显示以下输出。

image/jpeg
text/plain
application/zip
null
null
null
null

在最后四种情况下,它显示null 并且无法识别给定文件的文件类型。在 Java 中识别特定文件类型的最佳方法是什么?

最佳答案

使用

Files.probeContentType() 

http://openjdk.java.net/projects/nio/javadoc/java/nio/file/Files.html#probeContentType(java.nio.file.Path)

并为您认为会遇到的任何奇怪的球类型添加自定义检测器。

编辑:

这是 v7 的 oracle JavaDoc

http://docs.oracle.com/javase/7/docs/api/java/nio/file/Files.html#probeContentType(java.nio.file.Path)

关于java - 在 Java 中识别特定文件类型的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9670040/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com