【问题标题】:Writing one character at a time in a C# Console Application?在 C# 控制台应用程序中一次写入一个字符?
【发布时间】:2014-12-31 17:22:26
【问题描述】:

我不知道该怎么解释……

基本上,我希望能够在控制台窗口中编写文本行,就像旧 RPG 用来编写对话一样,一次一个字符。来自游戏 Pokemon Mystery Dungeon 的示例(包含剧透):http://www.youtube.com/watch?v=i29juf2e92c

基本上就像对话的显示方式。

编辑:还应该提到,我将从文件中读取文本,并且我想一次将一个字符写入该文件中的文本。

【问题讨论】:

  • 欢迎来到 Stack Overflow。这不是在这里提问的好方法。到目前为止,您是否尝试过任何方法来解决您的问题?首先展示你的努力,这样人们就可以展示他们的努力。请阅读How to Askhelp center 作为开始..
  • @KCdod:我看不出Console.ReadLine 有什么相关性,Console 教程只讨论Console.WriteLine,而不是Console.Write
  • 你的努力在哪里?

标签: c# console


【解决方案1】:

您可以只使用Console.Write 一次打印一个字符,而无需WriteLine 提供的换行符,并调用Thread.Sleep 在字符之间短暂暂停。例如:

using System;
using System.Threading;

class Program
{
    static void Main(string[] args)
    {
        string text = "This will be printed one character at a time";
        foreach (char c in text)
        {
            Console.Write(c);
            Thread.Sleep(50);
        }
    }
}

【讨论】:

  • 应该解释一下,我将读取和写入文件中的文本,所以这可能不会。对不起。
  • @Revan114:以什么方式?仅仅因为我在我的示例应用程序中对其进行了硬编码并不意味着它必须以这种方式完成。 foreach 循环是打印出来的位 - 并不关心数据如何进入 text 变量。如果您需要知道如何从文件中读取文本,您应该做一些研究来尝试自己弄清楚如何做到这一点,如果遇到困难,请提出一个单独的问题。学习将大任务拆分为小任务非常重要——您询问了一次打印一个字符的消息,所以这就是我的回答。
  • 然后给出一个更好的问题说明
  • 哦,我想我现在明白了。谢谢。将在 6 分钟内标记您的答案。
猜你喜欢
  • 1970-01-01
  • 2021-12-10
  • 1970-01-01
  • 1970-01-01
  • 2017-06-05
  • 2011-12-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多