私は、次の質問を持っている:解析特殊文字
オリジナルRSSファイルの一部:私はStAXのパーサの特殊文字「& LT」を使用してファイルを読み込む
<item>
<title> I can get data in tag this </title>
<description><p> i don't get data in this </p></description></item>
。 。自動的に '<'に変換されます。
public Feed readFeed() {
Feed feed = null;
try {
boolean isFeedHeader = true;
String description = "";
String title = "";
XMLInputFactory inputFactory = XMLInputFactory.newInstance();
InputStream in = read();
XMLEventReader eventReader = inputFactory.createXMLEventReader(in);
while (eventReader.hasNext()) {
XMLEvent event = eventReader.nextEvent();
if (event.isStartElement()) {
String localPart = event.asStartElement().getName()
.getLocalPart();
switch (localPart) {
case "title":
title = getCharacterData(event, eventReader);
break;
case "description":
description = getCharacterData(event, eventReader);
break;
}
} else if (event.isEndElement()) {
if (event.asEndElement().getName().getLocalPart() == ("item")) {
FeedMessage message = new FeedMessage();
message.setDescription(description);
message.setTitle(title);
feed.getMessages().add(message);
event = eventReader.nextEvent();
continue;
}
}
}
} catch (XMLStreamException e) {
throw new RuntimeException(e);
}
return feed;}
private String getCharacterData(XMLEvent event, XMLEventReader eventReader)
throws XMLStreamException {
String result = "";
event = eventReader.nextEvent();
if (event instanceof Characters) {
result = event.asCharacters().getData();
}
return result;}
私が指示に従ってています:私は
これは私のコードである 『>説明』タグ "<の残りの部分でデータを取得することはできません。http://www.vogella.com/tutorials/RSSFeed/article.html
staxパーサー(関連コード)を使用してこのファイルをどのように読んでいますか?そして、新しいXMLファイルはどのように見えますか(例pls)? – zapl
新しいファイルに書き込むコードに欠陥があります。もしあなたがそれを見せたら、私たちはどのように識別するのかを助けることができます。 – Andreas
2番目の ''は ' 'のような終了タグではありませんか? –
dorukayhan