的`开放的,我试图从设备选择PDF文件,并将其上传到服务器上的文件。 ACTION_GET_CONTENT
用于从设备中选择pdf。无法创建使用ACTION_GET_CONTENT`
sel_book.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent();
intent.setType("application/pdf");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(intent, "Select PDF"), 1);
}
});
在活动结果上,我得到Uri并将其保存为字符串。
public void onActivityResult(int requestCode, int resultCode, Intent result) {
if (resultCode == RESULT_OK) {
if (requestCode == 1) {
Uri uri = result.getData();
String uriString = uri.toString();
File myFile = new File(uriString);
path = myFile.getAbsolutePath();
}
}
}
结果路径为,/document/primary:Download/Aptitude_2016_17.pdf
。我需要用它来创建一个新文件。 File selectedFile = new File(selectedFilePath);
。但它不会创建文件。 selectedFile.isFile()
返回false。我不知道为什么。请帮我解决这个问题。提前致谢。
谢谢。你能帮我获取选定的文件系统路径吗? – Choxmi
@Choxmi:**没有文件系统路径**。唯一的办法就是创建自己的文件,使用'ContentResolver'和'openInputStream()',加上一个'FileOutputStream'到你控制的某个文件。然后,使用标准Java I/O从输入流复制到输出流。然后,你有你自己的文件和内容,你可以用它来达到你想要的任何目的。完成后请随时删除文件。 – CommonsWare
明白了。非常感谢您的回复。 – Choxmi