package util;
import java.io.File;
import java.io.FileInputStream;
import java.net.URL;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import org.dom4j.Attribute;
import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import chen.domain.House;
public class RssReader {
public List<House> parse(HttpServletRequest request) {
List<House> list = new ArrayList<House>();
try {
URL url = Thread.currentThread().getContextClassLoader()
.getResource("");
SAXReader saxReader = new SAXReader();
Document document = saxReader.read(url+"/"+"util"+"/"+"southampton.xml");
Element channel = (Element) document.getRootElement().element(
"channel");
for (Iterator i = channel.elementIterator("item"); i.hasNext();) {
House house = new House();
Element element = (Element) i.next();
String title = element.elementText("title");
String postCode = "";
String price = "";
int j = title.indexOf("SO");
int k = title.lastIndexOf("£");
int l = title.lastIndexOf("pw");
if (j > 0 && k > 0) {
postCode = title.substring(j, j + 4);
price = title.substring(k, l);
String link = element.elementText("link");
String pubDate = element.elementText("pubDate");
house.setPostCode(postCode);
house.setPrice(price);
house.setPubDate(pubDate);
house.setTitle(title);
house.setUrl(link);
list.add(house);
}
}
}
catch (Exception e) {
e.printStackTrace();
}
return list;
}
}
本文介绍了一个使用Java实现的RSS解析器,该解析器能够从特定的XML文件中读取房屋租赁信息,并将其转换为一系列对象。通过DOM4J库解析XML,从每个RSS条目中提取标题、链接和发布日期等信息。
203

被折叠的 条评论
为什么被折叠?



