【发布时间】:2016-05-09 16:14:51
【问题描述】:
我正在尝试在服务器上上传视频。这就是我获取视频的方式
intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
intent.addCategory(Intent.CATEGORY_OPENABLE);
intent.setType("video/*");
startActivityForResult(intent, SELECT_VIDEO);
我通过这种方式获取文件 uri
Uri uri = data.getData();
这是我收到的
content://com.android.providers.media.documents/document/video%3A165191
我以这种方式显示视频预览
mVideoView.setVideoURI(uri);
mVideoView.requestFocus();
mVideoView.start();
预览播放完美。然后我需要制作一个文件将其上传到服务器。我是这样制作这个文件的
file = new File(uri.getPath());
但是当我到达下面的行时,它给出了错误
FileInputStream fileInputStream = new FileInputStream(file);
我也试过 uri.toString();但仍然错误。我收到的错误如下:
2 错误:/document/video:165191:打开失败:ENOENT(没有这样的文件或 目录) java.io.FileNotFoundException:/document/video:165191:打开失败: ENOENT(没有这样的文件或目录)
请有人帮助我...这真的让我很沮丧..
【问题讨论】:
-
不是每个url都可以表示为文件,调用
url.openConnection().getInputStream()
标签: java android video uri fileinputstream