当前位置: 代码迷 >> Android >> Android 文件的取舍(转)
  详细解决方案

Android 文件的取舍(转)

热度:16   发布时间:2016-04-28 05:23:02.0
Android 文件的选择(转)

打开文件选择器

private void showFileChooser() {    Intent intent = new Intent(Intent.ACTION_GET_CONTENT);     intent.setType("*/*");     intent.addCategory(Intent.CATEGORY_OPENABLE);     try {        startActivityForResult( Intent.createChooser(intent, "Select a File to Upload"), FILE_SELECT_CODE);    } catch (android.content.ActivityNotFoundException ex) {        Toast.makeText(this, "Please install a File Manager.",  Toast.LENGTH_SHORT).show();    }}

?

?

选择的结果

@Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data)  {    switch (requestCode) {        case FILE_SELECT_CODE:              if (resultCode == RESULT_OK) {              // Get the Uri of the selected file             Uri uri = data.getData();            String path = FileUtils.getPath(this, uri);        }                   break;    }super.onActivityResult(requestCode, resultCode, data);}

?

?

FileUtils文件

public class FileUtils {    public static String getPath(Context context, Uri uri) {         if ("content".equalsIgnoreCase(uri.getScheme())) {            String[] projection = { "_data" };            Cursor cursor = null;             try {                cursor = context.getContentResolver().query(uri, projection,null, null, null);                int column_index = cursor.getColumnIndexOrThrow("_data");                if (cursor.moveToFirst()) {                    return cursor.getString(column_index);                }            } catch (Exception e) {                // Eat it            }        }         else if ("file".equalsIgnoreCase(uri.getScheme())) {            return uri.getPath();        }         return null;    }}

?

?

直接调用系统的文件选择,得到路径.

?

?

?

?

?

  相关解决方案