从Android文件管理器打开文件?

问题描述 投票:-2回答:2

如何让用户选择从文件管理器中选择文件?我想选择excel文件。

android xls internal-storage
2个回答
1
投票

请尝试以下代码,

 private static final int PICKFILE_REQUEST_CODE=3;
 Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
 intent.setType("file/*");
 startActivityForResult(intent,PICKFILE_REQUEST_CODE);

0
投票

下面的代码对于在android中打开所有类型的文件很有用。

1)在Oncreate()电话

public void callIntent() {
        Intent intent = new Intent()
                .setType("*/*")
                .setAction(Intent.ACTION_GET_CONTENT);
        intent.putExtra(Intent.EXTRA_LOCAL_ONLY, true);
        intent.addCategory(Intent.CATEGORY_OPENABLE);
        intent.setFlags(FLAG_GRANT_READ_URI_PERMISSION | FLAG_GRANT_WRITE_URI_PERMISSION);
        startActivityForResult(Intent.createChooser(intent, "Select a file"), 123);
}

2)在androidManifest中添加读写存储权限,以及在Android 6.0或更高版本中以编程方式检查权限

3)成功授予onActivityResult()许可

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
   super.onActivityResult(requestCode, resultCode, data);
   if (requestCode == 123 && resultCode == RESULT_OK) {
       if ((data != null) && (data.getData() != null)) {
            Uri selectedFile = data.getData();
       }
   }
}
© www.soinside.com 2019 - 2024. All rights reserved.