web-dev-qa-db-ja.com

base64文字列をデコードしてpdf / jpgに変換し、ストレージに保存する方法

Base64文字列をデコードし、それをファイル(pdf/jpg)に変換してデバイスに保存します。たとえば(/storage/emulated/0/Download/file.pdf)に保存します。

ファイルをエンコードするには、このコードを使用します:

File originalFile = new File("/mnt/sdcard/download/file.pdf");
    String encodedBase64 = null;
    try {
        FileInputStream fileInputStreamReader = new FileInputStream(originalFile);
        byte[] bytes = new byte[(int) originalFile.length()];
        fileInputStreamReader.read(bytes);
        encodedBase64=Base64.encodeToString(bytes,Base64.NO_WRAP);
        messaggio=encodedBase64.toString();
        //encodedBase64 = new String(Base64.encode(bytes));
    } catch (FileNotFoundException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }

今、私はこのbase64文字列をdeocdeし、ファイルに変換してデバイスに保存したいと思います...

誰かが私を助けることができますか?

ありがとうございました=)

8

これを試すことができます:

FileOutputStream fos = new FileOutputStream(filepath);
fos.write(Base64.decode(base64String, Base64.NO_WRAP));
fos.close();

どこ:

  • filepath:新しいファイルへのパス
  • base64String:変換したいbase64文字列
17
Prerak Sola