Android 文件选择的实现代码
程序员文章站
2023-01-01 23:54:30
打开文件选择器复制代码 代码如下:private void showfilechooser() { intent intent = ne...
打开文件选择器
复制代码 代码如下:
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();
}
}
选择的结果
复制代码 代码如下:
@override
protected 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;
}
}
这个很简单。
出处:http://www.cnblogs.com/linlf03/