目的:通过对网页内容解析,获得需要的内容,如网页的标题Title,主要内容,描述信息;而里面的广告、超链接、无关紧要的信息统统不要,从而达到对用户上网行为的分析的目的。下面是我...

目的:通过对网页内容解析,获得需要的内容,如网页的标题Title,主要内容,描述信息

;而里面的广告、超链接、无关紧要的信息统统不要,从而达到对用户上网行为的分析的目的。

下面是我做的一个:只能对xml文件解析,其他的格式不行。其次这只是对一级子元素判断,未判断二级或三级等。

需要导入jdom jar包

1.放在E盘的app.xml文档

loops

look

loops1

look1

java处理程序

package example;

import org.jdom.*;

import org.jdom.input.SAXBuilder;

import java.io.*;

import java.util.*;

/**

* Xml 解析工作实现(读取分析)

*

Title:

*

Description:

*

Copyright: Copyright (c) 2005

*

Company:

* @author Yaming

* @version 1.0

*/

public class XmlReader {

private Element m_RootElement = null;

public Element getM_RootElement() {

return m_RootElement;

}

public void setM_RootElement(Element m_RootElement) {

this.m_RootElement = m_RootElement;

}

/**

* 构造函数

* @param xmlFile String

* 根据文件的路径初始化dom的根

*/

public class XmlReader {

private Element m_RootElement = null;

public Element getM_RootElement() {

return m_RootElement;

}

public void setM_RootElement(Element m_RootElement) {

this.m_RootElement = m_RootElement;

}

/**

* 构造函数

* @param xmlFile String

* 根据文件的路径初始化dom的根

*/

public XmlReader(String xmlFile) {

try {

SAXBuilder builder = new SAXBuilder();//解析器定义

Document doc=null;

doc=builder.build(new FileInputStream(xmlFile));//读入Xml文件,获得Doc

this.m_RootElement = doc.getRootElement();//获得Xml文件的最上面的根

// System.out.println("1========"+m_RootElement);

}

catch (IOException ex) {

this.m_RootElement=null;

}

catch (JDOMException ex) {

this.m_RootElement=null;

}

}

/**

* 获得指定名字的根的内容,此方法只适用于此xml

* @param curRoot Element Your XmlRoot

* @param codeName String Your XmlCode

* @return List

*/

public List getElement(Element curRoot,String codeName) {

List result = new ArrayList();

if (null == curRoot) {

curRoot = m_RootElement;

}//判断Xml是否存在,以及根是否正确解析

if (null != curRoot) {

List l=curRoot.getChildren();//获得最上层根的所有字节点

Iterator it=l.iterator();//递归取出

while(it.hasNext()){

Element e=(Element)it.next();

if(e.getName().equalsIgnoreCase(codeName)){//获取这些根是否为所需要的

List l1=e.getChildren();//如果需要,解析出这个子节点的所有子节点

Iterator it1=l1.iterator();

while(it1.hasNext()){

Element e1=(Element)it1.next();

result.add(e1.getTextTrim());//取出所包含的值,放到要返回的结果集中

} } }}

return result;

}

展开

java txt html格式_java中xml(txt/html等格式)解析问题,请教java高手,请勿粘贴其他网页上的内容(能查的都看了)。...相关推荐

  1. java中的for语句格式_Java中foreach循环语句的格式可以写成(        )。

    [其它]1) 了解. 收集.整理 原研哉生平.设计理念及经典代表作 (可交) 2) google baidu 简洁的页面 丰富的变化 收集 (可交 ) [单选题]ABS 塑料通常用于 Jaguar L ...

  2. java 日期处理 口诀_java中如何对日期进行格式处理

    匿名用户 1级 2012-05-13 回答 import java.text.SimpleDateFormat; import java.util.Date; public class Test { ...

  3. java 异常处理发生异常_Java中的异常处理

    java 异常处理发生异常 Exception Handling in Java is a very interesting topic. Exception is an error event th ...

  4. java gc日志乱码_Java中9种常见的CMS GC问题分析与解决(四)

    目前,互联网上 Java 的 GC 资料要么是主要讲解理论,要么就是针对单一场景的 GC 问题进行了剖析,对整个体系总结的资料少之又少.前车之鉴,后事之师,美团的几位工程师历时一年多的时间,搜集了内部 ...

  5. python 怎么样去txt中提取xml_Python根据XML批量创建TXT并提取信息,python,xml,txt

    主要目的为根据xml文件批量创建txt文件,并将xml文件中的信息提取.保存至相应的txt中.参考xml处理程序: xml信息提取及格式转换 效果图: # -*- coding: utf-8 -*- ...

  6. java 写文件换行_Java写到.txt文件,如何实现换行

    http://blog.csdn.net/liangoo7/article/details/7882773 java中写.txt文件,实现换行的几种方法: 1.使用java中的转义符"\r\ ...

  7. java yyyy-mm-dd 日期格式_Java中的日历日期为yyyy-MM-dd格式

    小编典典 JavaDate是自1970年1月1日格林尼治标准时间00:00:00以来的毫秒数的容器. 当你使用时System.out.println(date),Java将使用Date.toStrin ...

  8. java socket http请求_JAVA中利用socket实现HTTP请求

    一个基于java的web服务器实现主要使用这两个重要的类:java.net.Socket和java.net.ServerSocket,并通过HTTP消息进行通信. HTTP请求 一个HTTP请求包括三 ...

  9. java中将json字符串_Java中JSON字符串与java对象的互换实例详解

    在开发过程中,经常需要和别的系统交换数据,数据交换的格式有XML.JSON等,JSON作为一个轻量级的数据格式比xml效率要高,XML需要很多的标签,这无疑占据了网络流量,JSON在这方面则做的很好, ...

最新文章

  1. 模糊匹配 读音_onenote搜索机制详解②:两种搜索模式,模糊与精确匹配
  2. WINDOWS中, 如何查看一个运行中的程序是64位还是32位的
  3. .NET Core 最小化发布
  4. PyTorch基础(八)----- torch.split()方法
  5. git status 不能显示中文
  6. mysql 插入当前时间_MySql优化之前期探索
  7. JDK 15中的确切绝对整数
  8. 一次蚂蚁金服的辛酸面试历程
  9. mysql 条件查询分页_百万数据下mysql条件查询及分页查询的注意事项
  10. python自动补全_Windows 下python的tab自动补全
  11. 过几天就退休了,目前情况下可不可以请同事们吃饭呢?
  12. 软件设计师21-计算机体系结构
  13. 脱离标准文档流(1)---浮动
  14. 贺利坚老师汇编课程29笔记:在代码段使用栈将程序定义的数据逆序
  15. VB INET控件的全部用法
  16. Atitit ati licenseService    设计原理
  17. 联合查询(union)——MySQL
  18. Fast-paced Multiplayer
  19. iOS获取路由器地址
  20. 解决DedeCMS搜索结果每页显示10条无法修改方法

热门文章

  1. apache.camel_Apache Camel 3.1 –更多骆驼核心优化(第3部分)
  2. netty java_Netty Java快速指南
  3. 注解代替枚举_精选枚举代替开关
  4. switch字符串jdk_从JDK 12删除原始字符串文字
  5. vue中生产模式和调试模式_为什么在生产中进行调试是如此诱人?
  6. Spring,Reactor和ElasticSearch:从回调到React流
  7. 如何在Java中处理ConcurrentModificationException? 在循环中从ArrayList中删除元素时要当心...
  8. 渴望 英语_渴望订阅– RxJava常见问题解答
  9. Gradle技巧–显示buildscript依赖性
  10. wildfly_从WildFly 9(子系统)中运行OkHttpClient