2017-01-23 63 views
0

使用經典的FileSystem API,我們可以獲得帶有附加參數的輸出流,以寫入文件末尾。Android SAF帶附加參數的openOutPutStream參數

這裏是我用來存取權限的文件中的代碼:

經典文件系統API:

boolean append = true; 
File target = new File(...); 
OutputStream outStream = new FileOutputStream(target, append); 

SAF API:

boolean append = true; 
File target = new File(...); 
DocumentFile targetDocument = getDocumentFile(target, false, context); 
OutputStream outStream = context.getContentResolver().openOutputStream(targetDocument.getUri()); 

但是我沒有追加參數在SAF API中。

如何使用SAF API追加到文件?

回答

0

使用此method。看看mode的文檔,你可以通過"wa"作爲追加到任意文件的模式。

然而"wa"是一個複雜的模式,如documentation表示,它需要的文件是可尋址的,但是當它從一個文件對象獲得ParcelFileDescriptor僅可搜索的,所以直到Android的O僅通過本地存儲的支持提供商可以支持它。

openFile()openAssetFile()被引用的原因是在DocumentsProvider的源代碼中,它們都委託給openDocument(),所以這兩個文檔都適用。