java读取html文件,截取<body>标签中内容

摘要:
m、 组(2).分裂(“//s+”)[0]:m组(2个);17imageSrcList.add(src);18} 19返回图像SrcL
 1     public String readfile(String filePath){
 2         File file = new File(filePath);  
 3         InputStream input = null;
 4         try {
 5             input = new FileInputStream(file);
 6         } catch (FileNotFoundException e) {
 7             e.printStackTrace();
 8         }  
 9         StringBuffer buffer = new StringBuffer();  
10         byte[] bytes = new byte[1024];
11         try {
12             for(int n ; (n = input.read(bytes))!=-1 ; ){  
13                 buffer.append(new String(bytes,0,n,"GBK"));  
14             }
15         } catch (IOException e) {
16             e.printStackTrace();
17         }
18 //        System.out.println(buffer);
19         return buffer.toString();  
20     }
21     
22      public String getBody(String val) {
23           String start = "<body>";
24           String end = "</body>";
25           int s = val.indexOf(start) + start.length();
26           int e = val.indexOf(end);
27         return val.substring(s, e);
28     }
29     
 1     public static void main(String [] args){
 2         OaDao m = new OaDao();
 3 //        String sql = "SELECT sth,xdh FROM TK_ST_0331 where sth='022012050101131000100' and rownum <=10";
 4         String sql = "select t.sth , t.stgjz ,t.stly, x.mc from TK_ST_0331 t ,TK_STK_ST_0331 k,TK_TX X  where t.sth = k.sth AND X.BH = t.tx and rownum <10 ";
 5         List<OaVo> datalist= m.findAll(sql);
 6         for(OaVo vo : datalist){
 7             System.out.println(vo.getVal1()+"///"+vo.getVal2());
 8             
 9 //            String sth = "022012010100000100100";
10             String sth = vo.getVal1();
11             String kmh = sth.substring(0, 2);    //科目号
12             String nf = sth.substring(2, 6);    //年份
13             String yf = sth.substring(6,10);    //月份
14             String serialno = sth.substring(10, 16);    //序列号
15             String stxl = sth.substring(16, 19);    //题型
16             String path ="/"+kmh+"/"+nf+"/"+yf+"/"+serialno+"/"+stxl+"/";
17             
18             String tm_path ="H:/tk_source/"+kmh+"/"+yf+"/"+serialno+"/"+stxl+"/"+sth+"_tm.htm";
19             String da_path ="H:/tk_source/"+kmh+"/"+yf+"/"+serialno+"/"+stxl+"/"+sth+"_da.htm";
20             String jx_path ="H:/tk_source/"+kmh+"/"+yf+"/"+serialno+"/"+stxl+"/"+sth+"_jx.htm";
21             
22     //        String path = "H:/tk_source/02/0101/000001/001/022012010100000100100_da.htm";
23             
24             String tm = m.getBody(m.readfile(tm_path));
25             System.out.println("----------------------题目------------------------------");
26             System.out.println(tm);
27             
28             String da = m.getBody(m.readfile(da_path));
29             System.out.println("----------------------答案------------------------------");
30             System.out.println(da);
31             
32             
33             String jx = m.getBody(m.readfile(da_path));
34             System.out.println("----------------------解析------------------------------");
35             System.out.println(jx);
36         }
37     }
 1 /**
 2      * 从HTML源码中提取图片路径,最后以一个 String 类型的 List 返回,如果不包含任何图片,则返回一个 size=0 的List
 3      * 需要注意的是,此方法只会提取以下格式的图片:.jpg|.bmp|.eps|.gif|.mif|.miff|.png|.tif|.tiff|.svg|.wmf|.jpe|.jpeg|.dib|.ico|.tga|.cut|.pic
 4      * @param htmlCode HTML源码
 5      * @return <img>标签 src 属性指向的图片地址的List集合
 6      * @author Carl He
 7      */
 8     public static List<String> getImageSrc(String htmlCode) {
 9         List<String> imageSrcList = new ArrayList<String>();
10         Pattern p = Pattern.compile("<img//b[^>]*//bsrc//b//s*=//s*('|/")?([^'/"/n/r/f>]+(//.jpg|//.bmp|//.eps|//.gif|//.mif|//.miff|//.png|//.tif|//.tiff|//.svg|//.wmf|//.jpe|//.jpeg|//.dib|//.ico|//.tga|//.cut|//.pic)//b)[^>]*>", Pattern.CASE_INSENSITIVE);
11         Matcher m = p.matcher(htmlCode);
12         String quote = null;
13         String src = null;
14         while (m.find()) {
15             quote = m.group(1);
16             src = (quote == null || quote.trim().length() == 0) ? m.group(2).split("//s+")[0] : m.group(2);
17             imageSrcList.add(src);
18         }
19         return imageSrcList;
20     }

免责声明:文章转载自《java读取html文件,截取&amp;lt;body&amp;gt;标签中内容》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇PHP的memory_limit引起的问题穷举与迭代下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

UPX Easy GUI 汉化版by TK

这个软件的官方下载地址:http://www.novirusthanks.org/product/upx-easy-gui/ upx是一个压缩壳,但是官方发布的upx不支持GUI界面,所以有人就自己开发了其它的GUI来供大家使用。 这就是其中一个,本人对其中的部分做了汉化。  【汉化声明】:本人仅对其中的汉化文件做了修改,并未修改程序的任何代码,本人保证不...

JSP三大指令

JSP页面中的三大指令:page include taglib一、Page指令的介绍:对整个页面的配置信息的指令。全部都是当前页面的配置信息。去掉JSP的Page指令就是一个HTML文件。page指令怎么加:<%@ page ... %>里面的属性:autoFlush是否清除缓存,默认True,不用修改。ContentType页面的类型,utf...

前端基础总结

HTML初识 △HTML: 超文本标记语言,是一种用于创建网页的标记语言,不是编程语言,没有逻辑 本质上是浏览器可识别的规则 我们按照规则写网页,浏览器根据规则渲染我们的网页。对于不同的浏览器,对同一个标签可能会有不同的解释。(兼容性问题) 网页文件的扩展名:.html或.htm(没有区别) 网页文件的扩展名:.html或.htm(没有区别) 我们按照规则...

使用kaptcha生成验证码

kaptcha是一个简单好用的验证码生成工具,通过配置,可以自己定义验证码大小、颜色、显示的字符等等。   1、下载kaptcha。     http://code.google.com/p/kaptcha/downloads/list   2、新建一个Web项目,并将下载压缩包中的kaptcha-2.3.2.jar放在项目的WEB-INF/lib目录下。...

富文本编辑器的一键排版功能

在做CMS系统的时候,用户常常会从word粘贴一些东西到编辑器中,早起的富文本编辑器也都提供了去除word格式的功能(尽管有时候比较难用),甚至有时候用户要求打开一个本地的word文件的时候系统能够直接把word文件转换为网站上可以直接浏览的内容,他们不关心你中间用了什么技术,也有人专门对此做了一些前端控件的开发,然后按用户进行授权,似乎销售成绩还不错。...

Python小项目四:实现简单的web服务器

https://blog.csdn.net/u010103202/article/details/74002538 本博客是整理在学习实验楼的课程过程中记录下的笔记形成的,参考:https://www.shiyanlou.com/courses/552。不同之处在于实验楼使用python2.7,而博主这里使用的是python3.6。在学习中也因为pytho...