程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> C#完成在掌握台輸出暗碼顯示星號的辦法

C#完成在掌握台輸出暗碼顯示星號的辦法

編輯:C#入門知識

C#完成在掌握台輸出暗碼顯示星號的辦法。本站提示廣大學習愛好者:(C#完成在掌握台輸出暗碼顯示星號的辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是C#完成在掌握台輸出暗碼顯示星號的辦法正文


在掌握台輸出的內容C#默許依照字符串停止處置,假如直接讓用戶一次輸出終了就很難完成 顯示星號的功效。然則假如讓用戶一次只能輸出一個字符就,在將用戶輸出的字符調換為星號便可以完成了!

起首,C#中能讓用戶按下一個按鍵的辦法就是Console.Readkey(),用戶一次只能按下一個按鍵,個中它的別的一個重載辦法是Console.ReadKey(bool b),bool類型的參數用來掌握能否在掌握台上顯示用戶按下的按鍵。那末我們可以傳入true參數,應用戶按下的按鍵不顯示在掌握台上,如許光標一直逗留在本來的地位,然後在該地位打印一個*號便可完成。同時此辦法的前往值為ConsoleKeyInfo類型。經由過程查MSND得知ConsoleKeyInfo類型是描寫按下的掌握台鍵,包含掌握台鍵表現的字符和 Shift、Alt 和 Ctrl 修正鍵的狀況。此類型數據類型是構造體類型,個中有兩個主要的屬性Key和KeyChar。個中的Key對運用於按下的某個按鍵,是列舉類型,KeyChar是用戶按下按鍵對應的Unicode編碼字符。那末如許我就就可以拿到用戶輸出的字符串和用戶按下的按鍵。用戶輸出暗碼是一個輪回的進程,當用戶按下按鍵輸出暗碼時刻設置不顯示字符,然後在雷同地位打印一個*號,最初斷定用戶能否按下了回車鍵,如許就停止了全部暗碼輸出進程。

詳細代碼以下

//掌握台輸出暗碼顯示星號

      //界說一個字符串吸收用戶輸出的內容
      string input = null;

      Console.WriteLine("請輸出暗碼");

      while (true)
      {
        //存儲用戶輸出的按鍵,而且在輸出的地位不顯示字符
        ConsoleKeyInfo ck = Console.ReadKey(true);

        //斷定用戶能否按下的Enter鍵
        if (ck.Key != ConsoleKey.Enter)
        {
          if (ck.Key != ConsoleKey.Backspace)
          {
            //將用戶輸出的字符存入字符串中
            input += ck.KeyChar.ToString();
            //將用戶輸出的字符調換為*
            Console.Write("*");
          }
          else
          {
            //刪除毛病的字符
            Console.Write("\b \b");
          }
        }
        else
        {
          Console.WriteLine();

          break;
        }
      }

      Console.WriteLine("你適才輸出的是{0}", input);

      Console.ReadKey();

終究完成後果以下

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved