c# - 有没有一种在不知道文件扩展名的情况下确定文件类型的简单方法?

标签 c# .net windows file-extension file-type

我有一个带有二进制列的表,该列存储许多不同的可能文件类型(PDF、BMP、JPEG、WAV、MP3、DOC、MPEG、AVI 等)的文件,但没有存储名称或名称的列原始文件的类型。有什么简单的方法可以让我处理这些行并确定存储在二进制列中的每个文件的类型吗?最好是一个只读取文件头的实用程序,这样我就不必完全提取每个文件来确定其类型。

澄清:我知道这里的方法只涉及读取每个文件的开头。我正在寻找一个很好的资源(又名链接),它可以为我做这件事而不会太麻烦。谢谢。

此外,请仅在 Windows 上使用 C#/.NET。我没有使用 Linux,也不能使用 Cygwin(不能在 Windows CE 上工作,还有其他原因)。

最佳答案

您可以使用这些工具来查找文件格式。

文件分析器 http://www.softpedia.com/get/Programming/Other-Programming-Files/File-Analyzer.shtml

什么格式 http://www.jozy.nl/whatfmt.html

PE文件格式分析器 http://peid.has.it/

本网站可能对您有所帮助。 http://mark0.net/onlinetrid.aspx

注意: 我提供了下载链接,以确保您获得正确的工具名称和信息。

请在下载前验证来源。

我过去使用过一个工具,我认为它是文件分析器,它会告诉你最接近的匹配。

快乐的工具。

关于c# - 有没有一种在不知道文件扩展名的情况下确定文件类型的简单方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/318880/

相关文章:

捕获窗口像素而不考虑其 z 顺序

c# - Linq 可选参数

.net - 使用正则表达式将字符串映射到功能

linux - 有没有办法从ubuntu复制到windows?比如我可以安装的命令或功能?

c# - .Net 扩展方法(此字符串 Foo)仅部分可见

c# - xUnit.net 中的测试参数化类似于 NUnit

windows - 什么是 USB 设备 GUID 及其含义

c# - 忽略异步而不等待编译警告

c# - dotnet-test 可以指定运行时标识符吗?

C# 使用 Process.Start 参数和路径中的空格