我试图在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());
答案 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();