在我的一个应用程序中,我打开二进制文件,并收到用户对某些文件的一些错误报告。当他们向我发送文件时,如果我在桌面上的 Gmail 上下载它们,该文件会很好地显示在我的应用程序中。当我使用原生 Android GMail 应用程序下载它们时,文件没有打开。
以下是原始文件的前 64 个字节,与从桌面下载时显示的一样(显示为 hexa):
03 00 08 00 D8 0C 00 00 01 00 1C 00 BC 02 00 00
2D 00 00 00 00 00 00 00 00 01 00 00 D0 00 00 00
00 00 00 00 00 00 00 00 10 00 00 00 25 00 00 00
33 00 00 00 3D 00 00 00 44 00 00 00 49 00 00 00
以下是使用本机 GMail 应用程序下载的文件的前 64 个字节(再次为 hexa):
EF BF BD EF BF BD 2D EF BF BD 25 33 3D 44 49 4D
52 63 72 76 EF BF BD EF BF BD EF BF BD EF BF BD
EF BF BD EF BF BD EF BF BD EF BF BD EF BF BD EF
BF BD EF BF BD 29 2E 3E 43 54 59 69 6E 7F EF BF
是否对该文件进行了某种压缩,还是 GMail 应用程序损坏了它?特别是如果你看第一个样本的末尾,你有以下字节 10、25、33、3D、44、49,它们也出现在第二个样本的第一行,这让我认为这是一个压缩某种意义上的。