我正在尝试手动模拟 Console.Writeline。
即:我正在创建一个带有函数 WriteLine 的小型控制台类。
请参阅下面的代码:
static class Console
{
public static string WriteLine(string text)
{
return text;
}
}
所以我尝试了:
class Program
{
static void Main()
{
Console.WriteLine("HiMan");
}
}
static class Console
{
public static string WriteLine(string text)
{
return text;
}
}
我知道它会返回文本,但是如何在不使用 Write 或 Writeline 方法的情况下将其显示在屏幕上?
我创建这个例子是为了让人们了解类是如何工作的,以及为什么当我使用 WriteLine 或 Write() 时它会在控制台窗口中显示文本。
最佳答案
这取决于你想走多深。 Console.WriteLine() 在内部调用 Console.Out 上的 WriteLine。 Console.Out 是一个提供 WriteLine 实现的 TextWriter。您始终可以通过直接将字节写入流来实现自己的 WriteLine。
如果你想更深入,比如直接写入控制台缓冲区,请注意控制台的 Out、In 和 Error 属性都是可重定向的,忽略它们可能会导致问题,例如无法使用重定向输入和输出命令行上的管道。
关于C# : Manually creating a console. writeline,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12389766/