java寻找html文件中的标签

来源:互联网 发布:淘宝做代销能赚钱吗 编辑:程序博客网 时间:2024/06/03 15:59

题目描述:

找出html文件(vacation.htm)中的所有标签名并显示出来。*不要使用正则表达式。


代码:

import java.io.*;class ShowTags{  public static void main(String[] args)throws IOException{     String content = readFile("vacation.htm");     int len = content.length(); /*for(int i = 0; i < content.length();i++) { System.out.print(content.charAt(i)); }*/ //char [] ar = content.toCharArray();     int begin = 0, end = 0; for(int i = 0; i < len;) { if((content.charAt(i) == '<')  && (content.charAt(i+1) != '!')  && (content.charAt(i+1) != '/')) { begin = i; for(int j = i+1 ; j < len ; j++) { if((content.charAt(j) == ' ') || (content.charAt(j) == '>')){end = j;i = j + 1;System.out.println(content.substring(begin+1, end));break;} } } else { i++;  } }  }  static String readFile(String fileName) throws IOException{    StringBuilder sb = new StringBuilder("");int c1;FileInputStream f1= new FileInputStream(fileName);InputStreamReader in = new InputStreamReader(f1, "UTF-8");while ((c1 = in.read()) != -1) {  sb.append((char) c1);}                return sb.toString();  }}

运行结果截图:



    注意,这里将注释<!--  -->不当做标签。同时要注意<div>和 <div id = "aa">这两种情况下的区分,前一种是用循环判断是否"<"下一个就是">"了,后者是判断“<”下一个是否是空格,两种情况都应输出相应的标签。

0 0
原创粉丝点击