【问题标题】:How to get filename and extension when opening email attachment打开电子邮件附件时如何获取文件名和扩展名
【发布时间】:2012-03-11 20:26:39
【问题描述】:

我创建了一个意图过滤器来将我的活动与自定义文件扩展名相关联。这可以正常工作:邮件应用程序启动我的活动以获取具有自定义扩展名的附件。

在活动中,我这样阅读意图:

Uri uri = getIntent().getData();

我可以打开一个输入流,但我想知道附件的文件名和扩展名。有什么方法可以从 Uri 获得这个?

我尝试通过光标获取此信息,但邮件应用程序似乎只有两列:_id 和 _data,与文件名和/或扩展名无关。

我知道我无法访问实际文件,但需要知道文件名。

【问题讨论】:

    标签: android android-contentprovider


    【解决方案1】:

    如果您使用给定的 Uri 执行查询,则游标有 4 列:_id_data_display_name_size_display_name 是带扩展名的文件名。

    来源:AOSP 电子邮件应用程序

    AttachmentUtilities.Columns - 查询附件 Uri 时使用的列

    AttachmentProvider - 附件提供程序实现

    【讨论】:

      猜你喜欢
      • 2014-10-30
      • 2013-04-08
      • 1970-01-01
      • 2012-08-13
      • 2014-07-15
      • 2011-08-20
      • 1970-01-01
      • 1970-01-01
      • 2021-01-01
      相关资源
      最近更新 更多