从uri打开流

时间:2012-05-18 18:11:34

标签: java uri

我得到了一个uri(java.net.URI),例如http://www.example.com。如何在Java中将其作为流打开?

我真的必须使用URL类吗?

5 个答案:

答案 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对象范围内有效。