Java输入流在处理其他URL时给出io.filenotfound异常

时间:2013-09-11 07:21:32

标签: java android json inputstream

我正在写一个Android应用程序。现在我尝试使用此方法从URL获取JSON:

public String getInfo(String adress) throws Exception {
    URL url = new URL(adress);
    HttpURLConnection uc = (HttpURLConnection) url.openConnection();
    int status = uc.getResponseCode();
    InputStream in = uc.getInputStream();
    InputStreamReader inRead = new InputStreamReader(in);
    BufferedReader br = new BufferedReader(inRead);
    String line;
    String result = "";
    while ((line = br.readLine()) != null) {
        result += line;
    }
    return result;
}

在这个网址:http://www.rtvlansingerland.nl/tag/nieuws/?json=get_posts这个方法在这个网址上完全正常工作:http://www.rtvlansingerland.nl/?json=get_post&id=24411状态变量变为400,这会产生一个url not found异常,而uc.getInputStream()会返回一个filenotfound错误。

如果我在浏览器中打开URL,则返回完全有效的JSON(使用jsonlint检查)。

有没有人有选择可能出错?

提前谢谢。

1 个答案:

答案 0 :(得分:0)

首先,你不应该在主线程上使用网络连接,之后你应该检查URL上是否存在文件,如果存在则继续