如何讀取html文件中自帶的css樣式

package com.ruanqian.html.read;

import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

import javax.swing.text.html.parser.TagElement;

import org.htmlparser.Node;
import org.htmlparser.Parser;
import org.htmlparser.nodes.TagNode;
import org.htmlparser.util.NodeList;
import org.htmlparser.util.ParserException;

public class cssgetread {
 public static HashMap<String, String> cssgetread(String path) throws ParserException{
     HashMap<String, String> csshashmap=new HashMap<String, String>();
       Parser parser = new Parser (path);
       NodeList list = parser.parse (null);
       Node node = list.elementAt (0);
       NodeList sublist = node.getChildren ();
      NodeList childlist=sublist.elementAt(1).getChildren();
       for(int i=0;i<childlist.size();i++){
         if(childlist.elementAt(i).toHtml().toString().indexOf("<style")>=0){
          csshashmap=cssget(childlist.elementAt(i).toHtml().toString());
         }
       
      }

       return csshashmap;
      
      
     
     
    
    
 }
 /*
  * 獲取html文件中css樣式的值;
  * */
 public static HashMap<String, String> cssget(String cssvalue){
   String str=null;
   String []css=null;
      HashMap<String, String> cssmap=new HashMap<String, String>();
    if(cssvalue.indexOf("<style")>=0){
      if(cssvalue.indexOf(">")>=0){
       cssvalue=cssvalue.substring(cssvalue.indexOf(">")+1,cssvalue.lastIndexOf("}")-1);
        css=cssvalue.split("}");
                
      }
    
    }
   
    for(int i=0;i<css.length;i++){
      int a=css[i].indexOf("{");
      String calssname=css[i].substring(0,a-1).trim();
      String calssvalue=css[i].substring(a+1).trim();
      cssmap.put(calssname, calssvalue);
   
   }
   return cssmap;
  
  
  
 }
      
     
      
  
 public static void main(String args[]) 
    {
     try {
      String path ="E:/aa.html";
   cssgetread(path);
   
  } catch (ParserException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
    }
 
     

}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章