从URL读取时遇到问题(Android)
问题描述:
我有一个家庭作业,我必须从一个文件加载代码行并将它们输出到日志猫中。以下是我的代码:从URL读取时遇到问题(Android)
private void readFromURL (String requestedURL){
try {
URL myurl = new URL (requestedURL);
InputStream mystream = myurl.openStream();
Scanner myscan = new Scanner (mystream);
while (myscan.hasNextLine()) {
String aLine = myscan.nextLine();
Log.d ("works", aLine);
}
}
catch (MalformedURLException oops) {
Log.d ("ERROR" , "Are you sure the URL is correct?" + oops);
}
catch (IOException oops_again)
{
Log.d ("ERROR", "Can't access the remote resource: " + oops_again);
}
}
readFromURL方法是通过单击按钮来调用的。每当我运行应用程序时,我都会得到IOException,它会显示“无法访问远程资源:”。在日志猫。
的URL,我试图抓住信息从为:http://www.cis.gvsu.edu/~dulimarh/CS163H/courses.cgi
我加入互联网清单中的权限。
感谢您的帮助!
答
使用以下方法来获取数据的InputStream
做你需要的东西:
private InputStream downloadUrl(String url) {
HttpURLConnection con = null;
URL url;
InputStream is=null;
try {
url = new URL(url);
con = (HttpURLConnection) url.openConnection();
con.setRequestMethod("GET");
con.setDoInput(true);
// Start the query
con.connect();
is = con.getInputStream();
}catch (IOException e) {
//handle the exception !
e.printStackTrace();
}
return is;
}
利用这一点,你应该能够呼应使用Log.d
从InputStream
每一行 - 你应该能够找出那部分;)
感谢您的帮助,但是我需要使用readFromURL方法来满足实验室要求。 – 2012-02-10 18:17:11
@AdamJakiela是的,我意识到这一点。我具体_没有纠正你的方法的原因是因为你需要_learn_(你自己)出了什么问题。我们不在这里为你在Stack Overflow上做你的功课:)如果你按照我发布的逻辑进行操作,你会发现答案很简单。 – 2012-02-10 18:19:55