如果文件已重命名,如何查找文件扩展名?

时间:2012-05-09 12:43:03

标签: java

如果文件已重命名,如何查找文件扩展名?有没有可用的工具?

示例:我有一个文件“1.doc”;我希望每个人都知道这是一个我刚刚重命名为“1.txt”的Word文档。但该文件最初是一个Word文档;我怎样才能获得原始文件扩展名?

5 个答案:

答案 0 :(得分:1)

您无法恢复以前的文件扩展名。您所能做的就是查看文件的内容,并尝试猜测它是什么。

大多数(很多?)文件格式以“魔术”值开头,用于标识文件格式,但此方法永远不会100%准确。

@AaronDigulla在评论中提到,有些库可以帮助你完成“猜测”的任务,而that question的答案包含指向某些此类库的指针。

答案 1 :(得分:1)

重命名文件后,不保留以前的名称。

至于从其内容自动猜测文件的格式,请查看Unix file实用程序。安装在我的Ubuntu盒子上的版本将Microsoft Word列为它所知道的“神奇”签名。

答案 2 :(得分:0)

您要做的是找出它的MIME类型。您可以使用本教程http://www.roseindia.net/java/java-get-example/get-mime-type.shtml

答案 3 :(得分:0)

在重命名之前将其保存在名为originalName的单独字符串中...因为当您更改字符串的名称时,分配的内存会更改,而且不会返回或撤消

答案 4 :(得分:0)

考虑使用JavaBeans Activation Framework中的javax.activation.FileDataSource。特别是使用getContentType()方法。