Método Console.OpenStandardError en C#

Este método se utiliza para adquirir un flujo de error estándar. Este método se puede usar para volver a adquirir el flujo de error estándar después de que el método SetError lo haya cambiado.

Sintaxis:

public static System.IO.Stream OpenStandardError ();

Devoluciones: este método devuelve el flujo de error estándar.

Ejemplo: el siguiente código primero verifica que la string sea GeeksForGeeks y, de no ser así, el programa llama al método SetError para redirigir la información del error a un archivo, llama al método OpenStandardError en el proceso de volver a adquirir el flujo de error estándar e indica ese error. la información fue escrita en un archivo. La propiedad StreamWriter.AutoFlush se establece en true antes de volver a adquirir el flujo de error. Esto asegura que la salida se enviará a la consola inmediatamente en lugar de almacenarse en búfer.

// C# program to illustrate the 
// OpenStandardError() Method
using System;
using System.IO;
  
namespace GeeksforGeeks {
  
class GFG {
  
  
    // Main Method
    static void Main(string[] args)
    {
        Console.WriteLine("Please Write GeeksForGeeks");
        string a;
        a = Console.ReadLine();
  
        // checks for a string to be GeeksforGeeks
        if (!a.Equals("GeeksForGeeks")) { 
  
            // Write error information to a file.
            Console.SetError(new StreamWriter(@".\Errorfile.txt"));
  
            Console.Error.WriteLine("The String is not GeeksForGeeks");
            Console.Error.Close();
  
            // Reacquire the standard error stream.
            var standardError = new StreamWriter(Console.OpenStandardError());
            standardError.AutoFlush = true;
  
            Console.SetError(standardError);
  
            Console.Error.WriteLine("\nError information written"+
                                             " to Errorfile.txt");
        }
    }
}
}

Ejecutando en Cmd:

Archivo de salida:

Referencia:

Publicación traducida automáticamente

Artículo escrito por piyush25pv y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

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