我得到了一个uri(java.net.URI
),例如http://www.example.com。如何在Java中将其作为流打开?
我真的必须使用URL类吗?
答案 0 :(得分:12)
您必须创建一个新的URL
对象,然后在URL
实例上打开流。下面是一个例子。
try {
URL url = uri.toURL(); //get URL from your uri object
InputStream stream = url.openStream();
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (URISyntaxException e) {
e.printStackTrace();
}catch (IOException e) {
e.printStackTrace();
}
答案 1 :(得分:5)
URLConnection connection = uri.toURL().openConnection()
是的,您必须以某种方式使用URL
类。
答案 2 :(得分:2)
uri.toURL().openStream()
或uri.toURL().openConnection().getInputStream()
答案 3 :(得分:0)
您可以使用URLConnection
来读取给定网址的数据。 - URLConnection
答案 4 :(得分:0)
您应该使用ContentResolver来获取InputStream:
InputStream is = getContentResolver().openInputStream(uri);
代码在Activity对象范围内有效。