java - (Antlr)如何运行此输入并在终端中获取输出?

标签 java command-line antlr antlr3

我正在尝试在命令行中运行此代码。运行此命令后,我可以在命令行中输入内容

Command Line

如何运行输入并获取输出?我应该按什么按钮?

import java.io.*;
import org.antlr.runtime.*;

public class ParseMain {
    public static void main(String args[]) throws Exception {
    //ProjLangLexer lexer = new ProjLangLexer(new ANTLRFileStream(args[0]));
    ProjLangLexer lexer = new ProjLangLexer(new ANTLRInputStream(System.in));
    CommonTokenStream tokens = new CommonTokenStream(lexer);
    ProjLangParser parser = new ProjLangParser(tokens);
    parser.input();


    //ScanMain
    Token tok = lexer.nextToken();
    while (tok.getType() != Token.EOF) {
    System.out.println("Lexeme = " + tok.getText() + " Token = " + tok.getType());
        tok = lexer.nextToken();
    }
}

最佳答案

如果在 Windows 命令行中,请尝试按 Ctrl+Z 然后 Enter 来模拟 EOF。如果使用 unix,请尝试 Ctrl+D。

关于java - (Antlr)如何运行此输入并在终端中获取输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58601378/

相关文章:

java - 通用的、注解驱动的事件通知框架

swift - 在 Swift 中使用 Timer() 的命令行工具

java - antlr4 - 获取规则上下文的左右兄弟

java - ANTLR 匹配日期范围

java - 无法理解 lambda 和 longstream 方法

java - 减少 Java Lambda 函数部署包中 jar 文件的数量

java - 在 JPanel 上绘画并将其添加到 JScrollPane

windows - 在 Windows 命令行中自动化 cygwin 命令(最终在 MsBuild 中)

Windows 程序 : How to snoop on command line arguments?

intellij-idea - 构建ANTLR4源以获取源jar