웹 사이트에서 xml을 구문 분석하고 있습니다. 그러나 파싱하는 동안 CDATA 섹션의 텍스트는 일반 텍스트처럼 보이지 않습니다. 예를 들어 문자 " '"의 텍스트는 ’입니다. 이 문제를 어떻게 해결할 수 있습니까? 어떻게 CDATA 섹션의 텍스트를 정상적으로 파싱 할 수 있습니까? 나는 XmlPullParser를 사용하고있다. <description><![CDATA[Balyoz davasından yargılanan Emekli Amiral Semih Çetin, CNNTÜRK’te Ahmet Hakan’ın sunduğu Tarafsız Bölge programına konuk oldu. Çetin programda, 15 Temmuz darbe girişimiyle ilgili dikkat çeken bir iddiayı paylaştı.   “FETÖ’cülerin sözde darbe konseyi, ‘Yurtta Sulh’ta yer alan isimler açıklanmadan darbe girişimi bitti sayılmaz. İnsanlar ancak o zaman evine dönebilir” diyen Çetin, çarpıcı açıklamalar yaptı. Yurtta […]]]></description>
저에게 그것은 HTML 코드, 당신은 디코드에게 그것을 HTML로 필요 보인다XML을 파싱하는 동안 CDATA 섹션의 텍스트가 규칙적으로 보이지 않습니다.
0
A
답변
1
도와주세요 :
여기List<Sozcu> sozcus;
Sozcu sozcu;
String text,text1;
public XMLParser() {
sozcus = new ArrayList<Sozcu>();
}
public List<Sozcu> getCountries() {
return sozcus;
}
public List<Sozcu> parse(InputStream inputStream){
try{
// HttpURLConnection connection =(HttpURLConnection) new URL(url).openConnection();
// InputStream inputStream = connection.getInputStream();
XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
factory.setNamespaceAware(false);
XmlPullParser parser = factory.newPullParser();
parser.setInput(inputStream,null);
int eventType = parser.getEventType();
while (eventType != XmlPullParser.END_DOCUMENT){
String tagName = parser.getName();
switch (eventType){
case XmlPullParser.START_TAG:
if(tagName.equalsIgnoreCase("item")){
sozcu = new Sozcu();
}
break;
case XmlPullParser.TEXT:
text = parser.getText();
break;
case XmlPullParser.END_TAG:
if(tagName.equalsIgnoreCase("item")){
//countries.add(country);
sozcus.add(sozcu);
}else if(tagName.equalsIgnoreCase("description")){
// country.setRank(text);
sozcu.setDescription(text);
}else if(tagName.equalsIgnoreCase("link")){
// country.setName(text);
sozcu.setLink(text);
}else if(tagName.equalsIgnoreCase("pubDate")){
// country.setPopulation(text);
sozcu.setDate(text);
}else if(tagName.equalsIgnoreCase("title")){
// country.setPopulation(text);
sozcu.setTitle(text);
}else{
}
break;
default:
break;
}
eventType = parser.next();
}
}catch (Exception e){
e.printStackTrace();
}
return sozcus;
}
를 XML입니다 : 여기 내 XmlParser가있다.
Html.fromHtml("YOUR STRING HERE").toString();
작동합니다! 나는 새로운 꿀벌이야. 당신은 무엇을, 나는 몇 시간 동안 인터넷에서 수색하고 그 대답을 찾아 낼 수 없었다는 것을 알고있다. 정말 고맙습니다 –