Tastaturpuffer löchen !?

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Tastaturpuffer löchen !?

    Hallo zusammen,

    ich habe folgendes Problem ...

    einfache Userabfrage mit dementsprechender Usereingabe und dies in einer Schleife für den Fall das der User mehrere Eingabe tätigen möchte ...

    An sich funktioniert dies auch alles wunderschön, nur das wenn die Schleife wiederholt werden soll die erste Eingabe übersprungen wird und gleich zur zweiten geht.
    nach meinen bisherigen überlegungen und meinungsaustausch, dürfte es daran liegen das Console.ReadLine(); etwas im Puffer hält ...

    so daher meine Frage gibt es in C# die Möglichkeit den Tastaturpuffer oder auch welchen Puffer ReadLine() verwendet zu löschen?

    Danke für euere Hilfe!

    Gruß Spot
  • nicht wundern der quelltext ist nicht in java geschrieben sondern in c#
    leider gibt es keine syntax hightlighting für c#

    Quellcode

    1. bool wdh;
    2. do
    3. {
    4. string eingabe_vname = "";
    5. string eingabe_name = "";
    6. string eingabe_geb = "";
    7. char eingabe_wdh = ' ';
    8. Console.Clear();
    9. Console.WriteLine("Neuen Eintrag erstellen");
    10. Console.WriteLine("Bitte tätigen sie ihre Eingabe");
    11. Console.Write("Vorname: ");
    12. eingabe_vname = Console.ReadLine();
    13. Console.Write("Name: ");
    14. eingabe_name = Console.ReadLine();
    15. Console.Write("Geburtstag (\"tt.mm.jjjj\"): ");
    16. eingabe_geb = Console.ReadLine();
    17. Console.WriteLine(" ");
    18. Console.WriteLine("Danke für ihre Eingabe!");
    19. Console.WriteLine(" ");
    20. string[,] datensatz_neu = new string[1, 3];
    21. datensatz_neu[0, 0] = eingabe_vname;
    22. datensatz_neu[0, 1] = eingabe_name;
    23. datensatz_neu[0, 2] = eingabe_geb;
    24. for (int i = 0; i < datensatz_neu.GetLength(0); i++)
    25. {
    26. Console.WriteLine("Datensatz " + (i + 1));
    27. for (int j = 0; j < 3; j++)
    28. {
    29. Console.Write(datensatz_neu[i, j] + " ");
    30. }
    31. }
    32. Console.WriteLine();
    33. Console.Write("weitere Eingabe? (j/n): ");
    34. eingabe_wdh = Convert.ToChar(Console.Read());
    35. if (eingabe_wdh == 'j')
    36. wdh = true;
    37. else
    38. wdh = false;
    39. } while (wdh == true);
    Alles anzeigen



    dann nochmal der quellcode

    für den fall das der user eine weitere eingabe wünscht und somit die schleife nochmal durchlaufen wird
    wird die erste usereingabe

    Quellcode

    1. Console.Write("Vorname: ");
    2. eingabe_vname = Console.ReadLine();


    übergangen.