Pausa en ejecucion MS-DOS

Javo
08 de Abril del 2004
Hola, estoy haciendo una pequeña aplicacion que se ejecuta en MS-DOS. En un determinado momento, el programa tiene que mostrar una lista de nombres, que probablemente excede el tamaño de la pantalla, por lo que los primeros nombres no se pueden ver. Lo que quiero saber es si algun tipo de instruccion o metodo para que cuando esté la pantalla llena, haga una pausa hasta que el usuario pulse una tecla. Algo asi como cuando en MS-DOS haciamos "dir/p".
Muchas gracias de antemano.

Luisen98
08 de Abril del 2004
Existe el comando PAUSE, de MSDOS. Detiene todo hasta la siguiente pulsacion del teclado.

eldrum
08 de Abril del 2004
Me parece complicado, ya que java no esta diseñado para terminales (simplemente fijaos que no existe ningun metodo directo para borrar la pantalla).
Lo unico que se me ocurre es que tengas en algun punto un parametro numerico con el numero de lineas de la consola (en un archivo de propiedades o en el propio codigo) y que cuando hallas mostrado X lineas de codigo (mediante un if) haga una pausa.

el_josen
08 de Abril del 2004
Un emulador de consola de Ms-dos en windows tiene 25 lineas de pantalla que son fijas, (si no me equivoco,que puede ser :P) pero aunque lo hagas mas grande mas pequeño, cambia el tamaño de letra, no el numero de filas.

Asi lo podrias controlar. con un bucle en tu programa.

De todas formas, no se si te valdrá esto,posiblemente no, pero te puede dar una idea feliz :P, ¿y si lo metes en un fichero el listado? y lo ves con

System.getRuntime().exec ("type fichero.txt | more");


Asi, funcionaría, pero no se si el resultado es el que esperas.

Manotas
08 de Abril del 2004
1º) el_josen, la instruccion que has puesto:
System.getRuntime().exec ("type fichero.txt | more"); no he encontrado en la documentacion el metodo getRuntime() ni en la clase System, ni en ninguna otra, dime por favor dónde está, o que hay que importar.

2º) ¿Como se utiliza el comando PAUSE??
¿Que metodo en Java hace una pausa y en que clase está??

A quien me pueda ayudar muchas gracias

el_josen
08 de Abril del 2004

Hola

1) Perdona, es Runtime.getRuntime().exec("llamada al sistema ");

2) Lo que se refieren de Pause es un comando de Msdos, que puedes utilizar en el exec.

Por ejemplo

Runtime.getRuntime().exec("pause");

Te mostraria "Press any key and continue" y esperaria a que pulsaras alguna tecla.

(No se de todas formas si te seria el pause de mucha utilidad, quizas el more, mejor porque formatea la salida al tamñlo de la pantalla)




Mercer
08 de Abril del 2004
Yo tambien quisiera saber lo mismo. Por favor, una ayudita!

mequetrefe
08 de Abril del 2004
Va a ser del riego