Retrieving File Information

来源:互联网 发布:知乎web前端必读书籍 编辑:程序博客网 时间:2024/06/07 00:31
可以通过查询提供文件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)));
0 0
原创粉丝点击