如何在.Net Console App中设置默认输入值?

2024-04-28

如何在 .net 控制台应用程序中设置默认输入值?

这是一些虚构的代码:

Console.Write("Enter weekly cost: ");
string input = Console.ReadLine("135"); // 135 is the default. The user can change or press enter to accept
decimal weeklyCost = decimal.Parse(input);

当然,我不希望事情这么简单。我打赌必须做一些低级的、不受管理的事情;我只是不知道怎么办。

EDIT

我知道我可以用默认值替换无输入。我要问的不是这个。我正在尝试了解实现我所描述的行为所涉及的内容:为用户提供可编辑的默认值。我也不担心输入验证;我的问题与此无关。


我相信您将通过监听每个按键来手动管理此操作:

快速拼凑在一起的例子:

   // write the initial buffer
   char[] buffer = "Initial text".ToCharArray();
   Console.WriteLine(buffer);

   // ensure the cursor starts off on the line of the text by moving it up one line
   Console.SetCursorPosition(Console.CursorLeft + buffer.Length, Console.CursorTop - 1);

   // process the key presses in a loop until the user presses enter
   // (this might need to be a bit more sophisticated - what about escape?)
   ConsoleKeyInfo keyInfo = Console.ReadKey(true);
   while (keyInfo.Key != ConsoleKey.Enter)
   {

       switch (keyInfo.Key)
       {
            case ConsoleKey.LeftArrow:
                    ...
              // process the left key by moving the cursor position
              // need to keep track of the position in the buffer

         // if the user presses another key then update the text in our buffer
         // and draw the character on the screen

         // there are lots of cases that would need to be processed (backspace, delete etc)
       }
       keyInfo = Console.ReadKey(true);
   }

这非常复杂 - 您必须确保光标不会超出范围并手动更新缓冲区。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在.Net Console App中设置默认输入值? 的相关文章

随机推荐

  • 如何添加将 WC_Product_Variable 扩展到购物车的自定义 WooCommerce 产品类型

    我创建了一个基于内置变量产品类型的自定义 WooCommerce 产品类型 我希望拥有特定于我的产品类型的产品变体以及自定义特征和字段 这一切都在管理和我的自定义前端产品页面模板中正常工作和显示 这是我定制的产品 供参考 add actio
  • Java 轮询网络连接

    我正在用 Java 编写一个程序 在一个线程上打开 256 个网络连接 每当套接字上有任何数据时 我都应该读取它并处理它 目前 我正在使用以下方法 while true do iterate over all network connect
  • 如何测试 django 模板块的使用?

    我想做以下事情 if appnav hr div ul class tabs block appnav endblock ul div endif 但是 测试继承链中模板当前使用的块似乎不起作用 还有其他条件可以做到这一点吗 模板语言并不能
  • 使用 AppleScript 设置窗口位置

    我正在尝试使用 AppleScript 设置 Messages app 聊天窗口的位置 tell application System Events set position of window 1 of application Messa
  • 登录时出现quickblox错误,android

    我正在使用 Quickblox 在 Android 平台上进行聊天 并使用 facebook 身份验证 我这样做这些步骤 1 QBSettings getInstance fastConfigInit 2 QBAuth createSess
  • 如何使用 Typhoon 为集成测试注入假的、存根的或模拟的依赖项

    我正在尝试使用 KIF 编写集成测试 我的问题是 如何为特定视图控制器注入存根 模拟或虚假依赖项 每个使用数据模型 http 客户端 存储管理器等依赖项的视图控制器都来自 ModelAssembly ApplicationAssembly
  • 在 ElasticSearch 7+ 中,如何搜索所有文本字段?

    我想在 Elasticsearch 7 3 中存储的文档中搜索单词 我希望在以前版本的 Elasticsearch 上运行的一个示例是 query bool must match all oliver must not should fro
  • NodeJs util.promisify 不是一个函数

    我正在尝试 promisify mysql 函数 但是当我运行它时 控制台显示此错误util Promisify is not a function 这是我的代码 var util require util var mysql requir
  • 在 R 中查找 Twitter 关注者

    我想使用 R 查找用户的 Twitter 关注者的个人资料 关注者 gt 100000 尽管 twitteR 是一个很棒的软件包 但它在处理大量关注者时存在问题 因为人们需要实施睡眠例程以避免超过速率限制 我是一个相对新手 想知道如何循环遍
  • Python中如何从另一个函数调用一个函数内的函数? [复制]

    这个问题在这里已经有答案了 我已经在 python 中的另一个函数中定义了一个函数 现在我想调用内部函数 在Python中这可能吗 我怎么打电话func2 from func3 def func1 def func2 print Hello
  • 以正确的顺序添加 XML 元素

    我想添加元素到X文档 https msdn microsoft com de de library system xml linq xdocument 28v vs 110 29 aspx我想要构建的 XML 对象和元素的顺序是在 XSD
  • PHP-访问类的所有函数中的全局变量[重复]

    这个问题在这里已经有答案了 我需要在类的大多数函数中访问外部 php 文件的一些变量 我正在通过以下方式访问 并且工作正常 class test function a global myglobalvar function b global
  • javascript设置间隔作为单独的线程运行?

    我想使用计时器作为后备 以防我最终陷入无限循环 看来设置间隔是执行此操作的正确方法 但是 它对我不起作用 根据我的研究 setInterval 似乎应该在后台的单独线程中运行 但我没有看到它 为什么会发生这种行为 我该如何解决这个问题 va
  • 在 JSON-LD 中创建产品数组

    有人能发现我下面的代码有什么问题吗 它不会在 Google 结构化测试工具中进行验证 我正在尝试创建 JSON LD 代码以添加到具有多种待售产品的页面
  • Java中的逆向正则表达式

    Java中如何反转正则表达式 例如 ab de gt ed ba wow 您需要为正则表达式构建一个解析器并反转所有标记 部分 在这种情况下 ab de 是 a b d e 并反转这是 e d b a 现在想象一下群体 ab de 相反的是
  • 正则表达式没有方法测试[关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 ATM机允许4 或 6 位数字PIN 码和 PIN 码不能包含任何内容 但exactly 4 位数字或恰好 6 位数字 如果函数传
  • 如何在当前打开的文件中保存 VSTO 加载项的选项?

    我正在为 Powerpoint 2010 构建 VSTO 外接程序 并且外接程序设置的选项适用于当前打开的文件 而不是每个用户的配置 我可以将这些选项保存在当前文件中 我的意思是 将自定义 XML 添加到 PPTX 文件中 吗 如果是这样
  • C# 语法高亮着色

    我可以像在 Visual Studio 中一样单独更改字段 局部变量的颜色吗 下面是 Visual Studio 中的样子 字段变量赋值 读写为绿色 局部变量赋值 读写为白色 但在 VSCode 中 本地变量和字段变量的范围都是 varia
  • NextAuth 登录未触发我的凭据提供程序中的授权方法

    我正在开发一个 Next js 项目 使用 NextAuth 进行身份验证 我遇到一个问题 登录组件中对 SignIn 的调用似乎没有触发我的凭据提供程序中的授权方法 以下是我的 nextauth js 文件的摘录 CredentialsP
  • 如何在.Net Console App中设置默认输入值?

    如何在 net 控制台应用程序中设置默认输入值 这是一些虚构的代码 Console Write Enter weekly cost string input Console ReadLine 135 135 is the default T