Как добавить в файл с помощью Android Access Framework доступа? - PullRequest
0 голосов
/ 04 января 2019

Как я могу использовать инфраструктуру доступа к хранилищу, чтобы FileOutputStream добавлялся в файл? Следующий код перезаписывает файл

void write(Uri uri){
        try {
            ParcelFileDescriptor descriptor=getContentResolver().openFileDescriptor(uri,"w");
            if(descriptor!=null) {
                FileOutputStream op=new FileOutputStream(descriptor.getFileDescriptor());
                op.write("test string".getBytes());
                op.close();
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

Я знаю, что делать это с java.io.File, используя FileOutputStream(File file,boolean append)

Но я не вижу FileOutputStream(FileDescriptor fd,boolean append)

1 Ответ

0 голосов
/ 04 января 2019

Если вы хотите добавить файл, вам нужно использовать режим доступа "wa" вместо "w" в этом вызове:

ParcelFileDescriptor descriptor =
    getContentResolver().openFileDescriptor(uri, "w");
...