c# – 通过查看其二进制内容以编程方式找到文件类型.可能?

c# – 通过查看其二进制内容以编程方式找到文件类型.可能?,第1张

概述我有一个c#组件,它将收到以下类型的文件 .doc,.pdf,.xls,.rtf 这些将由调用siebel传统应用程序作为文件流发送. 所以… [LegacyApp]>> {二进制文件流}>> [零件] 遗留应用程序是一个黑盒子,无法修改以告诉组件它发送的文件类型(doc,pdf,xls).组件需要读取此二进制流并在具有正确扩展名的文件系统上创建文件. 有任何想法吗? 谢谢你的时间. 在基于 Li 我有一个c#组件,它将收到以下类型的文件
.doc,.pdf,.xls,.rtf

这些将由调用sIEbel传统应用程序作为文件流发送.

所以…

[LegacyApp]>> {二进制文件流}>> [零件]

遗留应用程序是一个黑盒子,无法修改以告诉组件它发送的文件类型(doc,pdf,xls).组件需要读取此二进制流并在具有正确扩展名的文件系统上创建文件.

有任何想法吗?

谢谢你的时间.

解决方法 在基于 Linux / Unix的系统上,您可以使用file命令,但我假设您想在代码中自己手动执行此 *** 作…

如果你有权访问的是文件的字节流,那么你需要独立处理每种文件类型.

执行您想知道的大多数程序/组件通常会读取前几个字节并根据它进行分类.例如,GIF文件以下列之一开头:GIF87a或GIF89a

许多文件格式在文件开头具有相同的签名,或者具有相同的标头格式.此签名称为magic number as described by me on this post.

入门的好地方是转到www.wotsit.org.它包含可按文件类型搜索的文件格式规范.您可以查看要处理的重要文件类型,看看是否可以在这些文件格式中找到一些识别因素.

您还可以搜索Google以尝试查找执行此分类的库,或查看文件命令的源代码.

总结

以上是内存溢出为你收集整理的c# – 通过查看其二进制内容以编程方式找到文件类型.可能?全部内容,希望文章能够帮你解决c# – 通过查看其二进制内容以编程方式找到文件类型.可能?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1263528.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-08
下一篇 2022-06-08

发表评论

登录后才能评论

评论列表(0条)

保存