【问题标题】:How to find file extension if the file has been renamed?如果文件已重命名,如何查找文件扩展名?
【发布时间】:2012-05-09 12:43:02
【问题描述】:

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

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

【问题讨论】:

    标签: java


    【解决方案1】:

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

    大多数(很多?)文件格式都以用于识别文件格式的“神奇”值开头,但这种方法永远不可能 100% 准确。

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

    【讨论】:

    【解决方案2】:

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

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

    【讨论】:

      【解决方案3】:

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

      【讨论】:

      • 我相信如果您在1.txt 上使用该链接中的代码,它会显示text/plain
      【解决方案4】:

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

      【讨论】:

        【解决方案5】:

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

        【讨论】:

        • 此方法不用于获取文件扩展名。
        • 这正是我想要的。非常感谢。
        猜你喜欢
        • 2010-11-04
        • 2014-05-29
        • 2010-11-16
        • 2016-09-02
        • 2018-10-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-04-04
        相关资源
        最近更新 更多