我正在开发一个 iOS 和 Android 应用程序,我必须从服务器以二进制数据的形式下载 PDF 文件并将它们写入磁盘。当我尝试在 Android 设备上使用 Adobe Reader 打开文件时,在 iOS 上运行时出现格式无效错误。
Android上的相关代码如下:
JSONArray bytesArray = new JSONArray(responseStrBuilder.toString());
DataOutputStream dos = new DataOutputStream(
new BufferedOutputStream(new FileOutputStream(file)));
for (int i = 0; i < bytesArray.length(); i++) {
dos.writeInt(bytesArray.getInt(i));
}
dos.close();
当我在我的 Mac 上将文件转换为 .txt 文件并在文本编辑器中打开它们时,内容似乎完全相同,只是 Android 应用程序下载的那个有很多空白行。我想知道这是否可能是问题以及如何克服它?
我还应该指出,我检查了两个平台上数组的长度、写入文件的每个项目的值等,它是完全相同的。
我附上了两个屏幕截图,第一个是在 Android 上下载的文件,第二个是从 iOS 上下载的。
任何帮助将不胜感激。谢谢 :)
安卓截图 https://dl.dropboxusercontent.com/u/67408017/Screen%20Shot%202014-02-20%20at%2011.18.41%20AM.png
iOS 截图 https://dl.dropboxusercontent.com/u/67408017/Screen%20Shot%202014-02-20%20at%2011.18.49%20AM.png