CSS解析器解析字符串内容

时间:2014-08-21 15:24:36

标签: java css parsing css-parsing

我试图在java项目中使用CSS Parser 从文本输入的String中提取CSS规则/ DOM。

我遇到的所有示例都将css文件作为输入。有没有办法绕过文件读取并直接使用css文件的字符串内容。

因为我正在处理的类只获取css文件的字符串内容,所有的读数都已经处理完毕。

现在我有了这个,' cssfile'是要解析的css文件的文件路径。

InputStream stream = oParser.getClass().getResourceAsStream(cssfile);
InputSource source = new InputSource(new InputStreamReader(stream));
CSSOMParser parser = new CSSOMParser();
CSSStyleSheet stylesheet = parser.parseStyleSheet(source, null, null);
CSSRuleList ruleList = stylesheet.getCssRules();  
System.out.println("Number of rules: " + ruleList.getLength());

Reference link

1 个答案:

答案 0 :(得分:0)

我找到的解决方法是使用带有内容的StringReader创建Reader,并为Input源设置characterStream。但应该有更好的方法来做到这一点..

InputSource inputSource = new InputSource();
Reader characterStream = new StringReader(cssContent);
inputSource.setCharacterStream(characterStream);
CSSStyleSheet stylesheet = cssParserObj.parseStyleSheet(source, null,
            null);
CSSRuleList ruleList = stylesheet.getCssRules();