Я использую существующий код XMLReader в своем проекте для извлечения элементов со страницы XML. Он отлично работает только для одного элемента, подобного этому:
public String getURL(String Url) {
BufferedReader br = null;
try {
URL url = new URL(Url);
br = new BufferedReader(new InputStreamReader(url.openStream()));
String line;
StringBuilder sb= new StringBuilder();
while ((line = br.readLine()) != null) {
if(line.contains("presentationURL")) {
line = line.split("<presentationURL>")[1].split("</presentationURL>")[0];
sb.append(line);
sb.append(System.lineSeparator());
}
}
return sb.toString();
...
Но когда я пытаюсь добавить второй элемент сразу после этого:
if(line.contains("presentationURL")) {
line = line.split("<presentationURL>")[1].split("</presentationURL>")[0];
sb.append(line);
sb.append(System.lineSeparator());
}
как это:
if(line.contains("manufacturer")) {
line = line.split("<manufacturer>")[1].split("manufacturer")[0];
sb.append(line);
sb.append(System.lineSeparator());
}
программа выдает исключение Array Index Out of Bounds и некоторые другие ошибки. Как я могу заставить эту программу работать на большее количество элементов?