我从服务器获取字节数组,但不知道文件的确切扩展名,因为该文件可能是.pdf / mp4 / docx / zip,所以在将其保存到SD卡后我怎么知道确切的扩展名。
有什么想法吗?
答案 0 :(得分:0)
无法从文件内容中可靠地确定文件扩展名。这就像试图找出信封上写的是什么,如果你拥有的只是字母本身。
您可以猜测,但这将是一项艰巨的任务(例如,docx
也是zip
文件。有专门的软件(许多操作系统包括file
tool),你可能会找到一个可以使用的第三方库,但即使你这样做,它仍然是一个猜测。
除了内容之外,我宁愿专注于为服务器找一个告诉你原始文件名的方法。
答案 1 :(得分:0)
没有正确的方法可以立即确定文件扩展名。
但是,您可以为特定文件类型强加条件,例如,如果文件扩展名为mp3,则执行特定任务。为此,您可以使用FilenameFilter
。
检查how-to-find-all-files-with-certain-extension-on-android以获取有关它的更多信息。
答案 2 :(得分:0)
如果是自定义协议,则应将一个(或多个)数据类型的字节传递给客户端,然后根据第一个字节获取数据并在客户端添加扩展。如果它是类似http的协议,您可以在答案中添加一些标题。但它也需要在服务器端以及客户端上执行。