2017-10-13 4 views
-3
static string ReadPassword(int length, char c) 

この方法では、文字列をパスワードとして入力する必要があります。 長さはパスワードの最小文字数で、cは、パスワードの各桁ごとに画面に表示される文字です。文字列をパスワードに変換する

string pwd = ReadPassword(8, '●') 

ユーザーの種類、彼/彼女のパスワードの手紙:

は、メインで使用するための、少なくとも8文字以内でパスワードを入力します。ただし、画面には文字は表示されませんが、cに格納されている文字が表示されます(例:●)。

私の方法はリターンsで終了しますが、コンソールのeavenに入力された文字ごとに*を書き込むようにプログラムをビルドするにはどうすればいいですか?

+4

オッケーですが質問を忘れてしまいました! –

+0

https://softwareengineering.meta.stackexchange.com/questions/6166/open-letter-to-students-with-homework-problems –

+0

申し訳ありませんが、これは私の義務であり、どこから始めるべきかはわかりません。 –

答えて

1

あなたは、入力位置にカーソル位置を設定することができますか、これを試してみてくださいReadKey(true)を使用します。

class Program 
{ 
    static void Main(string[] args) 
    { 
     Console.Write("Set password: "); 
     var password = ReadPassword(8, 'o'); 
     Console.WriteLine(); 
     Console.WriteLine($"Your password is: {password}"); 
     Console.ReadKey(); 
    } 

    static string ReadPassword(int length, char c) 
    { 
     var left = Console.CursorLeft; 
     var top = Console.CursorTop; 
     var password = new StringBuilder(); 
     for (int i = 0; i < length; i++) 
     { 
      password.Append(Console.ReadKey().KeyChar); 
      Console.SetCursorPosition(left + i, top); 
      Console.Write(c); 
     } 
     return password.ToString(); 
    } 
} 

あなたがここにドキュメントを見つけることができます:https://msdn.microsoft.com/en-us/library/system.console.readkey(v=vs.110).aspx

+0

これはおかげで、私は2私は必要なもののバージョンを見つけることができませんでした。助けに感謝します! –

2

をここに行きます。

class Program { 
     static void Main(string[] args) { 
      char ch;int len; 
      Console.WriteLine("Enter the Length of the Password: "); 
      len = Convert.ToInt32(Console.ReadLine()); 
      Console.WriteLine("Enter the Character for Password:"); 
      ch = Convert.ToChar(Console.Read()); 
      printPassword(len, ch); 
      Console.Read(); 
     } 
     public static void printPassword(int len,char ch) { 
      char ch1;String pass=""; 
      int i; 
      for (i = 0; i < len; i++) { 
       pass += Console.ReadKey(true); 
       Console.Write(ch); 
      } 
     } 
    } 
+0

おかげさまで、あなたがこの答えにどうやって来たのか、より重要なのは、 または私自身がこれを理解することができたからです。 c#に関する書籍をお探しですか? –

+0

Martinからの 'Clean Code'とGary McLean Hallの' Adaptive Code'は初心者のための非常に良い本です。 – cSteusloff

+0

@cSteusloff大変お元気ですか、ありがとう。 –

関連する問題