Java文件解析器陷入递归循环

时间:2015-12-02 13:55:04

标签: java parsing recursion

我有一个Java解析器文件,用于查找具有特定格式的文件:

  

20151202data.csv

程序假设抓取当前天文件,解析它,然后返回数据。但是,当今天的文件不可用时,我需要它将一天回滚到昨天的文件。如果昨天不存在我要么死了。

public static JSONArray getJSON(String dataLocation) {
    HttpGet httpGet = new HttpGet(url);
    HttpResponse response = httpClient.execute(httpGet);
    int responseCode = response.getStatusLine().getStatusCode();

    logger.info("Response Code : " + responseCode);

    if (responseCode != 404){
        ...Parse...
    } else {
        errorCount++;

        if(errorCount > 1) {
            logger.info("Cannot find data.csv for" + getDayBefore(errorCount));
            return null;
        } else {
            logger.info("404: Today's file couldn't be found. Using " + getDayBefore(errorCount) + "data.csv");
            getJSON("/data/"+ getDayBefore(errorCount)+"data.csv");
        }
    }
}

目前我陷入了困境。有没有更好的方法来做到这一点,我忽略了?

1 个答案:

答案 0 :(得分:-1)

你的记录器调用说getDayBefore(errorCount),但你的getJSON调用是使用getDayBefore(count)。看起来你应该为两者使用errorCount。