是否可以使用String构造Yylex对象?

时间:2014-03-16 21:29:32

标签: java stringtokenizer jflex

最近我一直在使用Jflex,我注意到当我尝试构建Yylex对象时,它只接受java.io.Readerjava.io.InputStream。如果我只想使用String?来构建对象,我该怎么办?,如下所示:

String myString = "Hello world";
String token;
Yylex scanner = new Yylex(myString);

while ((token = scanner.yylex()) != null) {
     //do something
}

在我尝试构建的系统中,我希望用户编写内容,然后将Yylex方法应用于它。在我看到的类似于我的想法的模型中,用户输入一个字符串,然后将其写入Yylex将读取的文件中。

有可能吗?或者我误解了什么?有没有其他工具可以推荐而不是Jflex?

谢谢!

1 个答案:

答案 0 :(得分:0)

最简单的方法是使用StringReader,它可以从字符串中创建一个读取器,而无需跳过其他任何环节。只需使用:

Yylex scanner = new Yylex(new StringReader(myString));