C sharp en 5 minutos

C Sharp en 5 minutos #3: Imprimir y leer información en consola

Tiempo de lectura: 4 minutos

Introducción

Imprimir y leer información en consola – Tras habernos introducido un poco en C# y su estructura básica, lo primero que querremos hacer es saber cómo podemos mostrar información en nuestro programa, así como recoger información que inserte el usuario. Tanto en C# como en otros lenguajes de programación, para imprimir y leer información de forma básica, utilizaremos la consola.

¿No sabes lo que es la consola? No te preocupes, que dentro de poco tendrás pesadillas con ella 😉 . La consola es una aplicación que se ejecuta en una ventana de MS-DOS (línea de comandos) y que va a servir al usuario para interactuar con el programa de una forma básica, es decir, mostrando al usuario información y recogiendo información que introduzca el usuario.

Normalmente cuando pensamos en un programa lo hacemos pensando en su interfaz gráfica con sus elementos para interactuar… Pero cuando comenzamos a programar y a aprender, lo hacemos a través de la consola  y más adelante se aprenderá a representar todo de forma gráfica.

Clase Console

Para establecer la comunicación entre el usuario y el programa vamos a emplear la clase Console. Esta clase está incluída en la librería System, pues de por sí C# carece de instrucciones de Entrada y Salida (E/S) que permitan el manejo de cadenas de caractéres, etc. Usando la librería System tendremos acceso a la clase Console y a sus funciones Write (System.Console.Write), Writeline (System.Console.Writeline()), ReadLine (System.Console.ReadLine()) y ReadKey(System.Console.ReadKey()). Estas clases nos permitirán mostrar y leer información.

using System; //usamos la librería System que contiene la clase Console

namespace MiPrograma
{
    public class miPrograma
    {
        public static void Main(string[] args)
        {

        }
    }
 }

Ojo, hay que respetar el uso de las mayúsculas y minúsculas. Escribiendo Console.Writeline en lugar de Console.WriteLine, el compilador no reconocerá el método en sí.

Console.Write() y Console.WriteLine()

System.Console.Write() o su forma abreviada Console.Write() nos va a permitir mostrar por pantalla la información que introduzcamos entre sus paréntesis. La diferencia entre el método Console.Write() y Console.WriteLine() es que, como el nombre de la segunda indica, Console.WriteLine() va a mostrar la información en una nueva línea. En cambio, Console.Write() va a seguir en la misma línea.

Con un ejemplo se entiende mejor:

using System;

namespace miPrograma
{
   public class miPrograma
   {
        public static void Main(string[]args)
        {
           Console.Write("Imprimo ");
           Console.Write("Una frase ");
           Console.Write("En la misma línea");
           // Esto nos imprimirá: Imprimo Una frase En la misma línea.
           // tenemos que poner nosotros los espacios después de "imprimo" y "frase" para que se respeten
        }
   }
}

En cambio, si queremos escribirlo en líneas diferentes tan solo tendremos que usar el método Console.WriteLine() en su lugar:

using System; 
namespace miPrograma 
{
      public class miPrograma 
      { 
         public static void Main(string[]args) 
         { 
           Console.WriteLine("Imprimo esta frase en una línea."); 
           Console.WriteLine("Y esta frase en otra línea."); 
           // Esto nos imprimirá las frases en dos líneas distintas. 
        }
      } 
}

Con estos métodos podemos imprimir tanto frases que nosotros escribamos entre los paréntesis como la información contenida en una variable. Todavía no hemos visto las variables pero no os preocupéis pues la vamos a ver en la siguiente entrega, así que no vais a permanecer mucho tiempo con esta laguna.

No obstante, vamos a ver un ejemplo de cómo podríamos mostrar por consola la información contenida en una variable:

using System;

namespace MiPrograma
{
    public class miPrograma
    {
        public static void Main(string[] args)
        {
            Console.WriteLine("La variable miVariable contiene la siguiente información"); 
                        //Imprimo por pantalla una frase que yo mismo escribo en el método WriteLine
            String miVariable = "Mi nombre es Julián Campos";                              
                       //Creo la variable miVariable de tipo String y escribo su valor, en este caso una
                       //cadena de caracteres (String)
            Console.WriteLine(miVariable);                                                 
                      //Imprimo miVariable a través de WriteLine, como véis, no lleva comillas entre paréntesis

        }
    }
 }

Podemos ver una pequeña diferencia a la hora de usar Console.WriteLine() y es que si escribimos la frase nosotros entre los paréntesis del método vamos a tener que hacerlo entre comillas (Console.WriteLine(«Imprimo una frase»)) y si lo hacemos con una variable estas no se ponen (Console.WriteLine(miVariable)). De hecho, si escribiésesmos las comillas, se imprimiría la palabra miVariable en lugar de la información contenida por esta variable.

Console.ReadLine() y Console.ReadKey()

En cambio, si lo que queremos es leer la información introducida por el usuario en la consola, vamos a utilizar los métodos System.Console.ReadLine() o System.Console.ReadKey().

El método al que recurriremos con más frecuencia es al de Console.ReadLine(). Con este método guardaremos en una variable la informació que el usuario introduzca con su teclado y nos envíe presionando la tecla Enter. Al presionar esta tecla, la línea que el usuario haya introducido se almacenará en a variable que hayamos creado.

using System;

namespace MiPrograma
{
    public class miPrograma
    {
        public static void Main(string[] args)
        {
            Console.WriteLine("Introduce tu nombre:");  
                    //Le pedimos al usuario que introduza su nombre
            string nombreUsuario = Console.ReadLine();  
                   //Leemos la información introducida por el usuario y la guardamos en la variable nombreUsuario
                   //una vez que la tenemos guardada en una variable, ya podemos trabajar con esta información

        }
    }
 }

En cambio, con el método Console.ReadKey(), tan solo va a leer la información de la primera tecla  que el usuario presione y la va a mostrar por pantalla. No hace falta que el usuario presione Enter, si el usuario presiona la tecla «C», mostrará automáticamente el carácter «C».

using System;

namespace MiPrograma
{
    public class miPrograma
    {
        public static void Main(string[] args)
        {
            Console.WriteLine("Presiona una tecla:");
            Console.ReadKey();
                   //Console.ReadKey() leerá la tecla que presione y la mostrará por pantalla

        }

    }

 }

Cononciendo y practicando un poco con estos métodos de la clase Console, ya sabrás lo básico para mostrar y leer información. ¿Es todo lo que debes saber? Ojalá fuera tan fácil, pero todavía tenemos que saber algunas cuantas cosas más sobre mostrar y leer información por la consola como imprimir variables de forma completa así como leer y almacenar en variables diversos tipos de datos. Pero una vez más, no os preocupéis, pues lo veremos poco a poco y será dentro de poco.

Podrás ver todo lo relacionado con Console.ReadLine() y Console.WriteLine() utilizando las etiquetas del sitio 😉

Lo próximo que vamos a ver es el uso de variables. Aquí ya hemos hablado un poco de ellas y hemos mostrado cómo hemos utilizado algunas, pero en la siguiente entrega veremos la información al completo.

3 thoughts on “C Sharp en 5 minutos #3: Imprimir y leer información en consola

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *