2013-03-26 88 views
4

我在C#中创建了一个asp.net web应用程序,将一堆.xps文件转换为.pdf,我想验证要通过其内容类型转换的输入文件出于安全原因而不是文件扩展名。.xps文件的正确内容类型是什么

+4

从[这里](HTTP://www.ecma-international .org/publications/standards/Ecma-388.htm)根据文件的不同,它可能是'application/vnd.ms-xpsdocument'或'application/oxps' ......但是“真正的”验证可能会破解它打开(例如通过使用[Xps.Packaging](http://msdn.microsoft.com/en-us/library/ms604618.aspx)命名空间中的内容),并查看是否有文档评论失败... – nkvu 2013-03-26 02:59:00

+0

@nkvu我已经把两个标签放入switch语句,但它似乎是一个无效的内容类型.xps文件 – 2013-03-26 03:50:15

+0

不确定(然后,我不是格式专家)。在前面的评论中链接到的ECMA文件确实列出了其他一些内容类型(从第398页开始) - 可能其中之一是您正在寻找的内容类型之一? – nkvu 2013-03-26 04:07:52

回答

-2

根据这一File Signatures Table的XPS文件中的签名是:

50 4B 03 04 
+1

感谢您的回复,但内容类型是什么? – 2013-03-26 04:20:47

+0

你说:_“通过其内容类型而不是文件扩展名。”_因此,您读取文件的第一个字节并将其与正确的字节序列进行比较。我认为这是你正在寻找的。 – 2013-03-26 04:28:54

+0

真的很感谢这个谢谢你... – Tyeth 2017-09-21 07:26:24

4

According to this resource这将是application/vnd.ms-xpsdocumentapplication/oxps根据文件

+1

只是一个建议:如果我重新发布评论作为答案我让它社区维基。 – 2016-05-19 13:12:09

+0

Firefox刚刚从google驱动中获得了一个作为'''application/x-zip“的地址 – Tyeth 2017-09-21 07:46:44

相关问题