Я хочу проанализировать этот текст с помощью Sax Parser, проблема связана с тегами Html в теге содержимого. Строковый буфер не собирается читать теги Html. Может кто-нибудь подскажет мне, как это сделать с Sax Parser, или обратитесь к мне любая из ссылок, которые анализируют данные Html с SAX
HTML файл не соответствует XML.
Вы можете использовать этот метод для размещения данных в формате CDATA (параметр DATA: Actual Data; TAG: название тега XML, где необходимо поставить CDATA.)
public static final String putCDATA(String data, String tag) {
if(data == null || data.length() <= 0 || tag == null || tag.length() <= 0) {
return null;
}
String newData = "";
while(true) {
int firstIndex = data.indexOf("<" + tag + ">");
firstIndex = firstIndex + new String("<" + tag + ">").length() - 1;
int lastIndex = data.indexOf("</" + tag + ">");
if(firstIndex == -1 || lastIndex == -1) {
break;
}
String tagValue = data.substring(firstIndex + 1, lastIndex);
tagValue = "<![CDATA[" + tagValue + "]]>";
newData += data.substring(0,firstIndex + 1);
newData += tagValue;
newData += data.substring(lastIndex, lastIndex + new String("<" + tag + ">").length() + 1);
data = data.substring(lastIndex + new String("<" + tag + ">").length() + 1, data.length());
}
newData += data;
System.out.print("FORMATED: " + "\n" + newData);
return newData;
}
Если вы можете отредактировать текст, который вы указали, просто используйте CDATA:
<content><![CDATA[Your stuff here with all the <em>HTML</em> tags you can think of.]]></content>
Затем SAX Parser toString()
вернет строку следующим образом: Your stuff here with all the <em>HTML</em> tags you can think of.