【发布时间】:2013-11-06 16:39:02
【问题描述】:
我有问题。我想制作文件上传器应用程序。我正在使用 Intent.ACTION_GET_CONTENT 从我的设备中选择任何文件。我像这样在 onActivityResult 中接收文件:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
switch (requestCode) {
case REQUEST_CHOOSER:
if (resultCode == RESULT_OK) {
final Uri uri = data.getData();
File file = FileUtils.getFile(uri);
String fileName = file.getName();
String filePath = file.getPath();
int fileSize = Integer.parseInt(String.valueOf(file.length()/1024));
tvName.setText(fileName);
tvPath.setText(filePath);
tvSize.setText(String.valueOf(fileSize) + "kB");
}
}
}
我想显示有关所选文件的用户信息。一般来说一切都很好,但是当我从图库中选择图片时:
- 文件名没有显示格式 - 它是一个数字(可能引用内存中的文件)。当我通过已安装的文件探索选择图像时,我会得到类似 imagename.png 等的东西,但从画廊中选择的就像“195493”
- 从图库中选取的数据创建的 File.length 为 0。
在通过意图从图库中选择图像后,有什么方法可以访问真实的图像名称和大小?
【问题讨论】:
标签: android file android-intent gallery