2013-03-28 2 views
0

Приветствую всех; У меня есть файл XML «feed.xml» с формой, как, что:Android: Чтение XML-файла, содержащего код HTML

<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"> 
<channel> 
<item> 
<cache>0</cache> 
<id>v_article_16337.html</id> 
<article_id>16337</article_id> 
<type>article</type> 
<img> 
http://website.com/main/image.jpg 
</img> 
<filename> 
http://website.com/other/image.jpg 
</filename> 
<origine_filename> 
http://website.com/image.jpg 
</origine_filename> 
<title> 
<![CDATA[ 
Here plain text 
]]> 
</title> 

<datePub> 
<![CDATA[ 28.03.2013 | 08h00 | ]]> 
</datePub> 
<nbrComment>0</nbrComment> 
<lastComment> 
<![CDATA[ ]]> 
</lastComment> 
<theSameCategorie> 
<![CDATA[ 
Here HTML Code 
]]> 
</theSameCategorie> 
<description> 
<![CDATA[ 
Here plain text 
]]> 
</description> 
<content> 
<![CDATA[ 

Here html code 
]]> 
</content> 
</item> 
</channel> 
</rss> 

мне нужно как разобрать все эти данные и сохранить его в локальном файле, так что я могу посмотреть его позже, если нет интернета соединение доступно, я обнаружил, что если тег CDATA, значение будет проигнорировано! Спасибо

ответ

0

Вы должны либо проходным всех детей (независимо от того, сколько) и сцепить значение каждого, чтобы получить полный результат, или если это не важно для вас, чтобы различать между простым текстом и текстом внутри CDATA , затем сначала установите свойство коалесценции на заводе-изготовителе документа:

DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance(); 
docFactory.setCoalescing(true); 
Смежные вопросы