棒棒糖SDCard文件写入
Lollipop SDCard Document write
我有一个接受文件对象并对其进行修改的第三方库。
现在使用
获得 SD 卡的权限后
Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT_TREE);
并选择SD卡根。
然后用户浏览他想要修改的文件。现在这个
我需要传递给第三方库的文件路径/文件对象 class.
DocumentFile documentFile = DocumentFile.fromFile(file);
String documentURI = documentFile.getUri().toString();
MP3File mp3File = null;
documentFile = DocumentFile.fromFile(file);
mp3File = new MP3File(file.getAbsolutePath());
此处 MP3File class 接受文件路径。但是这个 class 没有任何文档构造函数。
我可以将文档转换为可写文件并用原始文件替换吗?或者有什么更简单的解决方案吗?
Now after getting the permission to SD card using... And selecting SD card root.
不要求用户选择任何特定文档。文档可能位于可移动存储、外部存储、Google驱动器、Dropbox、文件服务器或用户可以访问的任何其他地方。
Now this file's path/ file object I need to pass to the third party library class.
该文档没有 "path/file object"。
Here MP3File class accepts file path
任一:
找到一个更好的库,一个接受 InputStream
and/or OutputStream
的库,这样您就可以在它所在的位置使用文档,或者
使用JavaI/O将文档的内容复制到您控制的本地文件,然后将该文件传递给图书馆
我有一个接受文件对象并对其进行修改的第三方库。 现在使用
获得 SD 卡的权限后 Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT_TREE);
并选择SD卡根。
然后用户浏览他想要修改的文件。现在这个 我需要传递给第三方库的文件路径/文件对象 class.
DocumentFile documentFile = DocumentFile.fromFile(file);
String documentURI = documentFile.getUri().toString();
MP3File mp3File = null;
documentFile = DocumentFile.fromFile(file);
mp3File = new MP3File(file.getAbsolutePath());
此处 MP3File class 接受文件路径。但是这个 class 没有任何文档构造函数。
我可以将文档转换为可写文件并用原始文件替换吗?或者有什么更简单的解决方案吗?
Now after getting the permission to SD card using... And selecting SD card root.
不要求用户选择任何特定文档。文档可能位于可移动存储、外部存储、Google驱动器、Dropbox、文件服务器或用户可以访问的任何其他地方。
Now this file's path/ file object I need to pass to the third party library class.
该文档没有 "path/file object"。
Here MP3File class accepts file path
任一:
找到一个更好的库,一个接受
InputStream
and/orOutputStream
的库,这样您就可以在它所在的位置使用文档,或者使用JavaI/O将文档的内容复制到您控制的本地文件,然后将该文件传递给图书馆