2012-08-22 24 views

Respuesta

15

Use io.read() Tenga en cuenta que la función se puede personalizar con diferentes parámetros. Aquí hay unos ejemplos.

s = io.read("*n") -- read a number 
s = io.read("*l") -- read a line (default when no parameter is given) 
s = io.read("*a") -- read the complete stdin 
s = io.read(7) -- read 7 characters from stdin 
x,y = io.read(7,12) -- read 7 and 12 characters from stdin and assign them to x and y 
a,b = io.read("*n","*n") -- read two numbers and assign them to a and b 
4

La entrada más simple se puede recuperar usando io.read(). Esto leerá una sola línea de la entrada estándar (generalmente el teclado, pero se puede redirigir, por ejemplo, desde un archivo).

Se puede utilizar la siguiente manera:

io.write('Hello, what is your name? ') 
local name = io.read() 
io.write('Nice to meet you, ', name, '!\n') 

io.read() es sólo un atajo para io.input():read(), de manera similar io.write() es un acceso directo a io.output():write(). See the API for read() here.

Observe que io.write() no terminará automáticamente su línea como print() hace.

+3

Sugeriría usar 'io.stdin: leer' en lugar de asumir que el archivo de entrada predeterminado es' stdin'. Del mismo modo con 'io.stdout: write'. –

Cuestiones relacionadas