2017-02-04 5 views
-1

Android API имеет DocumentFile class. Этот класс имеет canWrite() method.Как программно писать в DocumentFile в Android?

Предположим, что я назвал этот метод, и он вернул true. Также предположим, что этот объект представлял «сырой» файл.

Теперь, как я могу сделать то, что он сказал, что смогу?

А именно, как написать текст «Hello world» в этот файл?

Спасибо.

ответ

1

А именно, как написать текст «Hello world» в этот файл?

Это не обязательно файл.

Чтобы написать документ, идентифицированный этой DocumentFile, вызовите getUri() на этой DocumentFile, чтобы получить Uri к документу. Перейдите к openOutputStream() на ContentResolver. Затем напишите в поток, flush() поток, и close() поток. В принципе, как только вы получите OutputStream, оттуда начинает работать Java-I/O.

+0

'java.io.File' также не требуется файл. – Dims

+0

@ Dims: Это значит, что любой объект 'File' указывает на файл или является недопустимым. Вместо этого «Ури» может указать на многое. Например, 'http: // stackoverflow.com/questions/42043114/how-to-write-to-documentfile-in-android-programatically/42043137' является допустимым' Uri'. Он не указывает на файл на любом клиентском устройстве. – CommonsWare

+0

Хорошо, я вижу это. – Dims