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

3

如果文件被重命名,如何找到文件扩展名?是否有任何工具可用于此?

例如:我有一个名为“1.doc”的文件;我希望每个人都知道这是一个Word文档,我只是将其重命名为“1.txt”。但该文件最初是一个Word文档;如何获取原始的文件扩展名?

5个回答

1

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

大多数(许多?)文件格式都以“魔术”值开头,旨在识别文件格式,但这种方法永远无法100%准确。

正如@AaronDigulla在评论中提到的那样,有一些库可以帮助您完成“猜测”的任务,该问题的答案包含了指向某些此类库的指针。


请参考以下问题,了解如何通过内容检查文件:https://dev59.com/y3VD5IYBdhLWcg3wNYxZ - Aaron Digulla

1

一旦您重命名文件,先前的名称将不会被保留。

至于从文件内容自动猜测文件格式方面,请查看Unix file实用程序。在我的Ubuntu系统上安装的版本中,它列出了Microsoft Word作为其所知道的“魔法”签名之一。


0

1
我相信如果你在1.txt上使用那个链接中的代码,它会显示为text/plain - Romain

0

在重命名之前,将其保存在一个名为originalName的单独字符串中...因为当您更改字符串的名称时,分配的内存会发生变化,而且没有回退或撤消的方法。


0

考虑使用JavaBeans激活框架中的javax.activation.FileDataSource。特别是使用getContentType()方法。


该方法不用于获取文件名扩展名。 - abksrv

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接