Не могу найти мою проблему с нулевым указателем - PullRequest
0 голосов
/ 05 марта 2020

Я просто не правильно инициализирую AnimeItem в массиве или это из-за того, как я просеиваю весь код html как один элемент, не следуя иерархии элемента, заголовка, ссылки, в правильный заказ? Не уверен, если честно, я пробовал несколько разных вещей, но пока не могу найти решение.

public static void main(String[] args)
{
    String HS = "";
    RSSReader r = new RSSReader();
    AnimeItem[] AI = r.getItems(HS);
    for(int i = 0; i < AI.length; i++)
    {
        System.out.println(AI[i].getENTRY() + ":\n" + AI[i].getTITLE() + "\n" + AI[i].getLINK());
    }
}
public AnimeItem[] getItems(String urlAddress) {
    try {
        URL rssUrl = new URL(urlAddress);
        BufferedReader in = new BufferedReader(new InputStreamReader(rssUrl.openStream()));
        String line;
        int ENTRYNUMBER = 0;

        while ((line = in.readLine()) != null) {
            if (line.contains("<item>")) {
                ENTRYNUMBER++;
                ANIMEITEMS[ENTRYNUMBER].setENTRY(ENTRYNUMBER);
            }

            if (line.contains("<title>")) {
                int firstPos = line.indexOf("<title>");
                String temp = line.substring(firstPos);
                temp = temp.replace("<title>", "");
                int lastPos = temp.indexOf("</title>");
                temp = temp.substring(0, lastPos);
                ANIMEITEMS[ENTRYNUMBER].setTITLE(temp);
            }

            if (line.contains("<link>")) {
                int firstPos = line.indexOf("<link>");
                String temp = line.substring(firstPos);
                temp = temp.replace("<link>", "");
                int lastPos = temp.indexOf("</link>");
                temp = temp.substring(0, lastPos);
                ANIMEITEMS[ENTRYNUMBER].setLINK(temp);
            }
        } 

        in.close();

        return ANIMEITEMS;
    } catch (MalformedURLException ue) {
        System.out.println("Problem with URL: " + ue);
    } catch (IOException ioe) {
        System.out.println("Problem with IO: " + ioe);
    }

    System.out.println("ISSUE");
    return null;
}

1 Ответ

0 голосов
/ 06 марта 2020

Извините, я был довольно глуп, обнаружил, что проблема заключается в том, чтобы просто увеличить размер массива сверх того, что мне нужно, продолжая выводить массив из границ снова и снова. Lol

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...