0

私は、サーバーから PDF ファイルをバイナリ データの形式でダウンロードしてディスクに書き込む必要がある iOS および Android アプリに取り組んでいます。Android デバイスで Adob​​e 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 アプリによってダウンロードされたファイルには多くの空白行があることを除いて、コンテンツはまったく同じように見えます。これが問題なのか、どうすれば解決できるのか疑問に思っています。

また、両方のプラットフォームで配列の長さ、ファイルに書き込まれる各項目の値などを確認したところ、まったく同じでした。

2 つのスクリーンショットを添付しました。1 つ目は Android でダウンロードしたファイルで、2 つ目は iOS でダウンロードしたものです。

どんな助けでも大歓迎です。ありがとうございました :)

Android スクリーンショット 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

4

0 に答える 0