Есть код для парсинга и внесения некоторых изменений в выводимый текст:
Document doc;
try {
doc = Jsoup.connect(contentUrl).get();
imagesRec = doc.select("div.post-featured-img amp-img[src~=(?i)\\.(png|jpe?g|gif)]");
imgSrcUrl = imagesRec.attr("abs:src");
contentPrepared = new StringBuilder();
for (Element p : doc.select("div.amp-wp-article-content p, div.amp-wp-article-content h2, div.amp-wp-article-content h3, div.amp-wp-article-content cite")) {
contentPrepared.append(p.text());
contentPrepared.append("\n" + "\n");
}
for (Element p : doc.select("div.amp-wp-article-content li")) {
contentPrepared.append(p.text());
contentPrepared.append("-----");
}
contentFinal = contentPrepared.toString();
Как видно из кода, я хочу взять классы div.amp-wp-article-content p, div.amp-wp-article-content h2, div.amp-wp-article-content h3 и div.amp-wp-article-content cite и вставить между ними новые строки, и это отлично работает.
Вся проблема во второй "вставке", точнее в конечном виде текста. Я хочу взять класс div.amp-wp-article-content li и вставить перед ним "-----". Все это работает, но при выводе на экран сначала выводится содержимое тегов с первого StringBuilder, а затем уже, в конце страницы, содержимое тега со второго StringBuilder.
Вопрос: как вывести элементы в том порядке, в котором они должны быть на странице? Т.е. текст внутри тега div.amp-wp-article-content li должен располагаться не в конце страницы, а между тегами с первого StrinBuilder'а.
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости