2012-03-02 5 views
-2

Je suis nouveau à java je veux stocker tous les noms de classe (seul nom) de fichier css particulier en hashmap ou vecteur s'il vous plaît aidez-moi je veux stocker BODY, .title, .surveyinstruct, .parthdr dans hashmapbesoin d'obtenir des classes de css

par exemple

BODY{ 
font-family: sans-serif; 
color: #cccccc; 
font-size: medium; 
font-style: normal; 
font-weight: bold; 
background-color: black; 
background-image: url(images/BLACKbody_whitemarble.jpg); 
} 
.title{ 
font-family: sans-serif; 
color: Navy; 
font-size: medium; 
font-style: normal; 
font-weight: bold; 
background-color: Transparent; 
border: no; 
} 
.surveyinstruct{ 
font-family: Arial; 
color: black; 
font-size: small; 
font-style: normal; 
font-weight: normal; 
background-color: Transparent; 
border: no; 
} 
.parthdr{ 
color: Navy; 
font-size: x-small; 
font-style: normal; 
font-weight: bold; 
background-color: #999999; 
border: no; 
font-family: Arial; 
} 

maintenant je dois stocker BODY, .title, .surveyinstruct, .parthdr dans hashmap ou vecteur -à-dire hashmap doit contenir tous les noms de classe que je peux utiliser pour d'autres travaux grâce à l'avance

Répondre

0

Vous pouvez utiliser CSS Parser. Ce n'est pas parfait et aussi simple, mais cela vous donne beaucoup plus ...

public Map<String, CSSStyleRule> parseCSS() throws IOException { 
    Map<String, CSSStyleRule> rules = new HashMap<String, CSSStyleRule>(); 

    InputSource inputSource = new InputSource(new FileReader("bootstrap.css")); 
    CSSStyleSheet styleSheet = new CSSOMParser().parseStyleSheet(inputSource, null, null); 

    CSSRuleList ruleList = styleSheet.getCssRules(); 
    for (int i = 0; i < ruleList.getLength(); i++) { 
     CSSRule rule = ruleList.item(i); 
     if (rule.getType() == CSSRule.STYLE_RULE) { 
      CSSStyleRule styleRule = (CSSStyleRule) rule; 
      rules.put(styleRule.getSelectorText(), styleRule); 
     } 
    } 

    return rules; 
} 
+0

CSSParser ne supporte pas CSS3, par ex. Requête multimédia CSS3, sélecteurs CSS3 et sélecteurs spécifiques au navigateur tels que @ -webkit-keyframes. Alors méfiez-vous. Sinon c'est bon .. !! –

+0

Je pense que cette limitation vient de [SAC] (http://www.w3.org/Style/CSS/SAC/) et qu'elle était en cours de développement il y a quelques temps. Je ne sais pas si c'est en ce moment ... –

+0

IL DONNE ERREUR SUR CSSOMParser() – sunshah1290