【问题标题】:How to fetch txt file from whatsapp fileprovider如何从whatsapp fileprovider获取txt文件
【发布时间】:2016-06-16 22:27:53
【问题描述】:

我试图获取 whatsapp 聊天 txt 文件。 正如我在 Android 文档中看到的那样:

private void handleSentMultipleAttached(Intent intent) {
    ArrayList<Uri> attachedFilesUris = intent.getParcelableArrayListExtra(Intent.EXTRA_STREAM);
    if (attachedFilesUris != null) {
        for (Uri uri : attachedFilesUris) {
            File f = new File(uri.getPath());
        }
    }
}

URI 是:

content://com.whatsapp.fileprovider/external/.Shared/WhatsApp%20Chat%20with.txt

但我不能使用 f 文件,因为该路径中不存在该文件。

我已经在清单中打开了权限:

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_USER_DICTIONARY" />

我应该怎么做才能使用该文件?

【问题讨论】:

    标签: android android-intent android-contentprovider android-permissions android-fileprovider


    【解决方案1】:

    但我不能使用 f 文件,因为该路径中不存在该文件。

    这不是文件系统路径。那是来自ContentProvidercontent: Uri

    我应该怎么做才能使用该文件?

    它不是一个文件,就像这个网页是 Stack Overflow Web 服务器上的一个文件一样。

    您可以使用ContentResolveropenInputStream() 来获取InputStreamUri 表示的内容。您可以通过在Context 上调用getContentResolver() 来获得ContentResolver,例如ActivityService

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-11-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-23
    相关资源
    最近更新 更多