OK -
1) "búfer de línea de entrada" es un lenguaje común para programas en modo consola, que data del Unix original y terminales VTxx en modo serie.
2) Puede leer E/S "en bruto, sin búfer" (una pulsación de tecla a la vez, en lugar de una línea a la vez), pero los detalles son específicos del sistema operativo. Sea lo que sea que necesite para hacer en un sistema operativo específico, casi con seguridad puede hacer desde Java.
3) Parece que quiere ser capaz de interceptar una tecla "flecha hacia arriba" o tecla "avanzar página", como ocurre, en un teclado de Windows. Quizás para jugar un juego o para interactuar con una interfaz de usuario en modo consola.
4) Hay varias opciones. Uno es posible que desee considerar es la API "robot", que se utiliza para la prueba:
Si eso no es suficiente, por favor, dar más detalles sobre exactamente cómo se está tratando de obtener su Java programa para interactuar con el programa C (y aclarar si la plataforma es de hecho Windows y un prompt de DOS).
Puede abrir un ssh en la misma máquina y ejecutarlo de esa manera. Sospecho que no hay nada simple para hacer esto. –
"buffer de línea" se produce en el nivel del sistema operativo. En Linux, por ejemplo, haría un "ioctl()" para configurar su terminal en "modo sin formato". ¿Quizás pueda buscar "E/S de terminal de Java", "maldiciones de Java" o palabras clave similares? – paulsm4
Ya hice una búsqueda exhaustiva en Internet y en SO. Esto parece ser un problema común, pero no he encontrado una sola solución para Windows –