我讀了第一個字節來區分文件類型,但PDF和DOCX都有一個「0x50」幻數。我該如何處理這種情況?PDF和DOCX幻數
回答
PDF文件沒有「魔術」字節。如果您閱讀PDF規範,您將看到他們必須以「%PDF」開頭,但實際上許多PDF文件不會。
1)只是尋找PDF頭來識別PDF文件是非常不可靠的,一個有效的PDF文件是一個可以解析的文件(至少有一個預告片,交叉引用表等)。
2)曾經有人建議PDF文件包含%PDF頭之前的二進制數據,以確保它們被視爲二進制文件。因此,PDF閱讀器開始在%PDF頁頭之前接受一定數量的二進制字節(隨機字節)。這種文件不能通過一個簡單的幻數或一串幻數來檢測。
[需要的引證]爲您的大多數不尋常的索賠。雨果的引用表明%PDF是非常標準的。 –
請參閱PDF參考文獻第二版中來自Adobe Systems的PDF版本1.3的實施說明13:「13. Acrobat瀏覽器只需要頭文件出現在文件的前1024個字節內。」。是的,這是一箇舊文件,但它仍然是世界範圍內大部分PDF標準的基礎。此外,我從1997年開始編寫了一個主要的商業PDF預檢軟件的第一個版本。相信我,我不同尋常的說法是正確的。 –
- 1. Docx/Pdf/etc和WebView
- 2. YII2 Filemanager(pdf,docx等)
- 3. Php上傳docx和pdf文件
- 4. DOCX和PDF的版本控制?
- 5. PDF和Docx的文件預覽器
- 6. 將DOCX轉換爲PDF格式的PDF
- 7. .docx,.xlsx,.pdf使用PHP的.pdf
- 8. PDF到DOC/DOCX轉換器
- 9. 轉換的docx爲PDF phpword
- 10. 將docx轉換爲pdf()
- 11. Docx到PDF轉換在java
- 12. 將docx轉換爲pdf
- 13. 從tinymce導出到pdf/docx
- 14. 使用angularjs和AWS S3在html中顯示pdf和docx
- 15. 讀取和轉換.pdf,.docx和.xls文件
- 16. Pywin32保存.docx文件爲pdf
- 17. doc,docx轉換爲pdf使用php
- 18. 如何在WebView中打開PDF/Docx
- 19. 在doc中將docx轉換爲pdf
- 20. JOD Converter to pdf API不知道docx?
- 21. 在.NET中創建PDF/DOCX/HTML文檔
- 22. 錯誤DOCX轉換爲PDF在Java
- 23. Jenkins:將.docx轉換爲.pdf問題
- 24. docx4j:幫助將docx轉換爲PDF
- 25. 使用powershell批量轉換docx到pdf
- 26. 使用PHP將docx轉換爲pdf
- 27. 帶DOCX的報告 - > PDF格式
- 28. 上傳docx,zip,rar,pdf,ppt,在php中
- 29. PHP - Laravel - 將Docx轉換爲PDF
- 30. 將TEX文件轉換爲PDF或DOCX?
爲什麼不使用文件擴展名? – Oscar
Agh愚蠢的我,我只是讓事情變得複雜。非常感謝你對我的理解! :) – user3770093