Jsoup解析xml文件

Jsoup解析xml文件

public class Test2 {
    public static void main(String[] args) throws IOException, XpathSyntaxErrorException {
        String path = Test2.class.getClassLoader().getResource("weather.xml").getPath();
        Document document = Jsoup.parse(new File(path), "utf-8");
        //1.获取city为北京下边的所有地区(county)的名字。
        Elements select = document.select("city[name=\"北京\"] county");
        for (int i = 0; i <select.size() ; i++) {
            System.out.println(select.get(i).attr("name"));
        }
//        System.out.println("-----------------");
        Elements city = document.getElementsByTag("city");
        Elements county = city.get(0).getElementsByTag("county");
        for (int i = 0; i <county.size() ; i++) {
            System.out.println(county.get(i).attr("name"));
        }
        //JXDocument做法
        JXDocument jxDocument=new JXDocument(document);
        List<JXNode> jxNodes = jxDocument.selN("//city[@name='北京']/county");
        for (int i = 0; i < jxNodes.size(); i++) {
            System.out.println(jxNodes.get(i).getElement().attr("name"));
        }
        
        //2.获取地区id为010103的地区名字。
        Elements select = document.select("#010103");
        String name = select.attr("name");
        System.out.println(name);
        //
        Element elementById = document.getElementById("010103");
        String name = elementById.attr("name");
        System.out.println(name);
//        //
        JXDocument jxDocument=new JXDocument(document);
        List<JXNode> jxNodes = jxDocument.selN("//county[@id='010103']");
        String name1 = jxNodes.get(0).getElement().attr("name");
        System.out.println(name1);


        //3.获取地区名字为房山的天气编码(weatherCode)。
        Elements select = document.select("county[name=房山]");
        String weatherCode = select.attr("weatherCode");
        System.out.println(weatherCode);
        //
        Elements elements = document.getElementsByAttributeValue("name", "房山");
        String weatherCode = elements.attr("weatherCode");
        System.out.println(weatherCode);
//        //
        JXDocument jxDocument=new JXDocument(document);
        List<JXNode> jxNodes = jxDocument.selN("//county[@name='房山']");
        String weatherCode1 = jxNodes.get(0).getElement().attr("weatherCode");
        System.out.println(weatherCode1);


        //4.获取所以的城市名称。
        Elements city = document.select("city");
        for (int i = 0; i <city.size() ; i++) {
            System.out.println(city.get(i).attr("name"));
        }

        Elements city = document.getElementsByTag("city");
        for (int i = 0; i <city.size() ; i++) {
            System.out.println(city.get(i).attr("name"));
        }
        
        JXDocument jxDocument=new JXDocument(document);
        List<JXNode> jxNodes = jxDocument.selN("//city");
        for (JXNode jxNode : jxNodes) {
            System.out.println(jxNode.getElement().attr("name"));
        }


        //5.获取城市id为3402的省份名称。
        JXDocument jxDocument=new JXDocument(document);
        List<JXNode> jxNodes = jxDocument.selN("//city[@id='3402']");
        String name1 = jxNodes.get(0).getElement().parent().attr("name");
        System.out.println(name1);
        System.out.println(jxNodes.get(0).getElement().attr("name"));
        
        Elements select = document.select("city[id=3402]");
        System.out.println(select.get(0).parent().attr("name"));

        String name = document.getElementById("3402").parent().attr("name");
        System.out.println(name);
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值