我知道如何在此处显示电子邮件中的附件名称:Android - get email attachment name in my application。
但是无法读取附加的实际文件。如何以编程方式在应用程序中读取该附加文件?
我尝试了这个代码,其中字节数组始终为null。我做错了什么:
public static String getContent(ContentResolver resolver, Uri uri)
{
Cursor cursor = resolver.query(uri, new String[] { MediaStore.MediaColumns.DATA }, null, null, null);
cursor.moveToFirst();
int nameIndex = cursor.getColumnIndex(MediaStore.MediaColumns.DATA);
Log.d("column", nameIndex + "");
if (nameIndex >= 0)
{
byte b[] = cursor.getBlob(nameIndex);
return b.length + "";
}
else
{
return null;
}
}
答案 0 :(得分:1)
试试这个:
Uri uri = getIntent().getData();
InputStream in = getContentResolver().openInputStream(uri);
InputStreamReader reader = new InputStreamReader(in);
此时,我将读者移到我在网上名为CSVReader的库中找到的类,但您可以直接使用InputStreamReader。