2011-07-26 22 views
20

Soy nuevo en este campo y estoy muy confundido: ¿cuál es la diferencia real entre Console.Read() y Console.ReadLine()?Diferencia entre Console.Read() y Console.ReadLine()?

+4

[Rápido] (http://www.google.ca/search?q=console.read) [googleando] (http://www.google.ca/search?q=console.readline): [' Console.Read' lee un solo carácter] (http://msdn.microsoft.com/en-us/library/system.console.read.aspx), y ['Console.ReadLine' lee una línea completa] (http: //msdn.microsoft.com/en-us/library/system.console.readline.aspx). – zneak

+0

Una comprobación rápida de MSDN en línea respondería que: Una línea se define como una secuencia de caracteres seguida de un retorno de carro (hexadecimal 0x000d), un avance de línea (hexadecimal 0x000a) o el valor de la propiedad Environment.NewLine. La cadena devuelta no contiene los caracteres de terminación. –

Respuesta

26

Console.Read() lee solo el siguiente carácter de la entrada estándar, y Console.ReadLine() lee la siguiente línea de caracteres del flujo de entrada estándar.

Entrada estándar en caso de aplicación de consola a partir de las palabras escritas por el usuario en la interfaz de usuario de la consola de su aplicación. Intenta crearlo en Visual Studio y ve por ti mismo.

5

MSDN es bastante claro en este caso.

  • Console.Read: Lee el siguiente carácter del flujo de entrada estándar.
  • Console.ReadLine: Lee la siguiente línea de caracteres del flujo de entrada estándar.
0

Console.Read() lee una sola clave, donde Console.Readline() espera la tecla Intro.

7

Console.Read() lee un solo carácter, mientras que Console.ReadLine() lee todos los caracteres hasta el final de la línea.

-1

Console.Read() se usa para leer el siguiente carácter del flujo de entrada estándar. Cuando solo queremos leer el carácter individual, utilice Console.Read().

Console.ReadLine() se utiliza para leer la alineación de caracteres de la secuencia de entrada estándar. cuando queremos leer una línea de caracteres, use Console.ReadLine().

+4

Su respuesta realmente no agrega nada en comparación con las otras respuestas (que fueron todas escritas en un minuto el uno del otro hace 7 meses, por lo que son tan similares) ... –

2

Console.Read() básicamente lee un carácter por lo que si está en una consola y presiona una tecla, la consola se cerrará, mientras tanto Console.Readline() leerá toda la cadena.

+4

¿Y qué pasa con Console.ReadKey()? – Doro

1

La diferencia básica es:

 int i = Console.Read(); 
     Console.WriteLine(i); 

pasta por encima de código y dar entrada 'c', y la salida será 99. Eso es Console.Read dar valor int, pero ese valor será el valor ASCII de ese ..

por otro lado ..

 string s= Console.ReadLine(); 
     Console.WriteLine(s); 

se da la secuencia mientras que se da en el flujo de entrada.

+0

Se eliminó el contenido promocional de la respuesta. No se permite promocionar nada (sitio web, blog, ningún producto u otro) en Stackoverflow, especialmente cuando no resuelve el propósito del problema/pregunta formulada. –

+0

El conjunto de caracteres probablemente no sea ASCII. ASCII no se ha utilizado mucho en consolas en ningún sistema operativo MS (incluido MS-DOS). Es una preferencia de usuario y ASCII no es la predeterminada. El comportamiento de Console.Read depende de Console.InputEncoding. –

0

La diferencia de método Read(), ReadLine() y readkey() se dan a continuación:

Read(): Este es el método estático en la clase Console:

int i = Console.Read();//it always return int value. 
    Console.WriteLine(i); 

pasta anteriormente codifique y dé la entrada '1', y la salida será 49. Eso es Console.Read give int value pero ese valor será el valor ASCII de eso ... ReadLine():

string s= Console.ReadLine();//it always return string value. 
    Console.WriteLine(s); 

Se da la secuencia mientras que se da en el flujo de entrada.

ReadKey(): este método se utiliza para mantener la pantalla de salida.cuando se presiona cualquier tecla. Read() y ReadLine() se utiliza la tecla Intro para salir.

1

Diferencia entre Read(), Readline() y ReadKey() en C#

Read() -Accept el valor de cadena y devuelve el valor de cadena. Readline() -Accept la cadena y volver Entero ReadKey() -Accept el carácter y el carácter de retorno de

Resumen:

1. El mencionado tres métodos se utilizan principalmente en la aplicación de consola y estos se utilizan para el retorno de los diferentes valores . 2.Si usamos Leer línea o Leer() necesitamos presionar el botón Entrar para volver al código. 3.En caso de que utilizando la clave de lectura() podemos pulsar cualquier tecla para volver el código en la aplicación

-1
console.read() 

=> leer más de un personaje de la entrada estándar

console.readline() 

=> lee todos los caracteres en la línea de la entrada estándar

+0

¿Cómo es esta respuesta de valor adicional sobre las otras respuestas? – Ivar

2
  • ReadKey (devuelve un carácter ): lee sólo un carácter único de el flujo de entrada estándar. Generalmente se usa cuando está dando opciones al al usuario en la consola para seleccionar, como seleccione A, B o C. Otro ejemplo prominente, Presione Y o n para continuar.
  • ReadLine (devuelve una cadena ): sólo lee una sola línea de la corriente de entrada estándar. Como ejemplo, se puede usar para preguntar al usuario ingresar su nombre o edad.
  • Read (devuelve int): lee un solo carácter de la corriente de entrada estándar . Similar a ReadKey, excepto que devuelve un entero .

Esto se describió claramente con ejemplos en la documentación de MSDN (los enlaces se incluyen arriba).