可以通过查询提供文件app的FileProvide来得到文件的MIME 和 size.
在得到文件的Uri后,可以调用ContentResolve.getType()来得到文件的类型.FileProvide是根据文件的后缀名来得到文件的类型.
Uri returnUri = returnIntent.getData();
String mimeType = getContentResolver().getType(returnUri);
FileProvide 的query方法可以返回文件的size和name.
FileProvide的返回值是一个Cursor对象,可以通过设定projection=null,selection=null,selectionArgs=null,sortOrder=null。来同时得到文件名和文件size,
Cursor query (Uri uri,
String[] projection,
String selection,
String[] selectionArgs,
String sortOrder)
下面是例子.
Uri returnUri = returnIntent.getData();
Cursor returnCursor =
getContentResolver().query(returnUri, null, null, null, null);
/*
* Get the column indexes of the data in the Cursor,
* move to the first row in the Cursor, get the data,
* and display it.
*/
int nameIndex = returnCursor.getColumnIndex(OpenableColumns.DISPLAY_NAME);
int sizeIndex = returnCursor.getColumnIndex(OpenableColumns.SIZE);
returnCursor.moveToFirst();
TextView nameView = (TextView) findViewById(R.id.filename_text);
TextView sizeView = (TextView) findViewById(R.id.filesize_text);
nameView.setText(returnCursor.getString(nameIndex));
sizeView.setText(Long.toString(returnCursor.getLong(sizeIndex)));
在得到文件的Uri后,可以调用ContentResolve.getType()来得到文件的类型.FileProvide是根据文件的后缀名来得到文件的类型.
Uri returnUri = returnIntent.getData();
String mimeType = getContentResolver().getType(returnUri);
FileProvide 的query方法可以返回文件的size和name.
FileProvide的返回值是一个Cursor对象,可以通过设定projection=null,selection=null,selectionArgs=null,sortOrder=null。来同时得到文件名和文件size,
Cursor query (Uri uri,
String[] projection,
String selection,
String[] selectionArgs,
String sortOrder)
下面是例子.
Uri returnUri = returnIntent.getData();
Cursor returnCursor =
getContentResolver().query(returnUri, null, null, null, null);
/*
* Get the column indexes of the data in the Cursor,
* move to the first row in the Cursor, get the data,
* and display it.
*/
int nameIndex = returnCursor.getColumnIndex(OpenableColumns.DISPLAY_NAME);
int sizeIndex = returnCursor.getColumnIndex(OpenableColumns.SIZE);
returnCursor.moveToFirst();
TextView nameView = (TextView) findViewById(R.id.filename_text);
TextView sizeView = (TextView) findViewById(R.id.filesize_text);
nameView.setText(returnCursor.getString(nameIndex));
sizeView.setText(Long.toString(returnCursor.getLong(sizeIndex)));