myCSharp.de - DIE C# und .NET Community
Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 
 | Suche | FAQ

» Hauptmenü
myCSharp.de
» Startseite
» Forum
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Suche
» Regeln
» Wie poste ich richtig?
» Forum-FAQ

Mitglieder
» Liste / Suche
» Wer ist wo online?

Ressourcen
» openbook: Visual C#
» openbook: OO
» Microsoft Docs

Team
» Kontakt
» Übersicht
» Wir über uns

» myCSharp.de Diskussionsforum
Du befindest Dich hier: Community-Index » Diskussionsforum » Entwicklung » Grundlagen von C# » Highscore mit C# erstellen, abspeichern und sortiert darstellen
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | Thema zu Favoriten hinzufügen

Antwort erstellen
Zum Ende der Seite springen  

Highscore mit C# erstellen, abspeichern und sortiert darstellen

 
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
codedoc codedoc ist männlich
myCSharp.de-Mitglied

Dabei seit: 21.02.2019
Beiträge: 2
Entwicklungsumgebung: C# Formsanwendungen


codedoc ist offline

Highscore mit C# erstellen, abspeichern und sortiert darstellen

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo zusammen,

ich habe ein kleines Spiel mit Windows Forms entwickelt, Ping Pong.
Wenn man den Ball verliert, poppt ein Fenster mit Textbox auf, in das man seinen Namen schreiben kann. Drückt man auf OK, wird Name und Highscore in eine Textdatei geschrieben.

Im Hauptmenü gibt es ein Button, der dann die Bestenliste aufruft, dabei wird mit dem StreamReader die Textdatei ausgelesen, in der Name und Score zuletzt abgespeichert wurden.

Nun will ich, dass der StreamReader nur bestimmte Daten aus dem Textfile liest (name und Highscore) und geordnet von höchstem highscore bis zum niedrigsten auflistet, in einer Listbox - natürlich mit dazugehörigem Namen
Außerdem möchte ich dann, das der beste Highscore Platz eins bekommt und soweiter (Platz1, Platz2...)

Wie stelle ich das an? Leider kann ich nur mit Windows Forms arbeiten und lerne in der Beruffschule zu wenig um einen Weg zu finden das zu bewerkstelligen.
21.02.2019 11:32 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Taipi88 Taipi88 ist männlich
myCSharp.de-Mitglied

avatar-3220.jpg


Dabei seit: 02.02.2010
Beiträge: 980
Entwicklungsumgebung: VS 2010
Herkunft: Mainz


Taipi88 ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hi,

ich glaube du hast hier einen nicht ganz so schlauen Ansatz mit Textdatei pro Datensatz.
(Wahnsinnig ineffektiv, sofern dein Spiel jemals ernsthaft benutzt würde und einige Dateien zusammenkommen)

Was hindert dich denn daran alle Datensätze in einer Datei abzuspeichern?
(Hier solltest du dich auch mal dringend in folgende Themen einlesen:
a) XML
b) JSON
c) Serialisierung
-> Das wird dir potenziell extrem viel Code sparen)

Praktisch musst du ohnehin alle Datensätze lesen, sortieren, und dann die besten rauspicken und anzeigen - es sei denn du speicherst diese in einer Datei jeweils vorsortiert...

Falls du da auf bestimmte Probleme triffst - am besten einen neuen Thread erstellen.

LG
21.02.2019 11:46 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
MrSparkle MrSparkle ist männlich
myCSharp.de-Team

avatar-2159.gif


Dabei seit: 16.05.2006
Beiträge: 5.232
Herkunft: Leipzig


MrSparkle ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Es sind mehrere Probleme, die man einzeln und unabhängig voneinander angehen und lösen kann:
- Daten schreiben
- Daten lesen
- Daten sortieren
- Daten anzeigen

Zu jedem Punkt wirst du jede Menge Anleitungen im Netz oder hier im Forum finden, nur halt nicht in der von dir beschriebenen, speziellen Kombination.
21.02.2019 16:21 Beiträge des Benutzers | zu Buddylist hinzufügen
M.L.
myCSharp.de-Mitglied

Dabei seit: 26.09.2006
Beiträge: 195
Entwicklungsumgebung: VS Community '19


M.L. ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Die Menge an Daten in der Datei für die Highscore könnte man auch auf z.B. 40 Einträge limitieren. Ein Array lässt sich mittels der Sort-Methode bearbeiten (ascending/descending):  https://www.dotnetperls.com/array-sort
21.02.2019 18:15 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
codedoc codedoc ist männlich
myCSharp.de-Mitglied

Dabei seit: 21.02.2019
Beiträge: 2
Entwicklungsumgebung: C# Formsanwendungen

Themenstarter Thema begonnen von codedoc

codedoc ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Danke für die Antworten smile

Ich werde mich mal einlesen.
25.02.2019 10:51 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Baumstruktur | Brettstruktur       | Top 
myCSharp.de | Forum Der Startbeitrag ist älter als 9 Monate.
Der letzte Beitrag ist älter als 8 Monate.
Antwort erstellen


© Copyright 2003-2019 myCSharp.de-Team | Impressum | Datenschutz | Alle Rechte vorbehalten. | Dieses Portal verwendet zum korrekten Betrieb Cookies. 22.11.2019 01:15