2013-09-05 101 views
0

我正在從服務器獲取字節數組,但不知道該文件的確切擴展名,因爲該文件可能是.pdf/mp4/docx/zip,所以如何才能知道確切的擴展名後保存到SD卡。如何確定文件的擴展名

有什麼想法?

回答

0

無法從文件內容中可靠地確定文件擴展名。這就像試圖找出信封上寫的是什麼,如果你只有信件本身。

你可以猜測,但是這將是一個艱鉅的任務(例如,docx也是zip文件)。這裏有專門的軟件(許多操作系統包括file tool),你可能會發現一個你可以使用的第三方庫,但即使你這樣做,它仍然是一個猜測。

我寧願專注於找到一種方法讓服務器告訴你除了內容之外的原始文件名。

0

沒有正確的方法來立即確定文件擴展名。

但是,您可以對特定文件類型施加條件,例如文件擴展名是mp3,然後執行特定任務。爲此,您可以使用FilenameFilter

查看how-to-find-all-files-with-certain-extension-on-android瞭解更多信息。

+0

如果我知道擴展我不會在這裏發佈我的問題,謝謝反正 – Khawar

0

如果是自定義協議,則應將一個(或多個)字節的數據類型傳遞到客戶端,然後根據第一個字節獲取數據並在客戶端添加擴展。如果它是http-like協議,則可以在答案中添加一些標題。但是在服務器端和客戶端也需要這樣做。