peachplayer Geschrieben 1. Oktober 2019 Melden Share Geschrieben 1. Oktober 2019 Hallo Leute Ich versuche mit folgendem Code eine Liste nach Datum zu sortieren. Das Datum wird als "String"-Variable gespeichert. public bool GroesserAls(string neu) { if (neu.CompareTo(Datum) < 0) { Debug.Log(neu + "ist grösser als" + Datum); return true; } else return false; } und hier die aufrufende Funktion: bool eingefuegt = false; for (int i = 0; i < liste8.Count; i++) { if ((liste8[i].GroesserAls(eintrag1.Datum))) { liste8.Insert(i, eintrag1); eingefuegt = true; break; } } if (!eingefuegt) liste8.Add(eintrag1 = new Dünger { Parzellenname = Parzellenname1, Datum = Datum1, Menge = Menge1, Kultur = Kultur1, Düngersorte = Düngersorte1, Fläche = Fläche1, Erlös = Erlös1 }); Leider kommt dabei nicht der gewünschte Output heraus, d.h. die Liste wird nicht richtig bzw. gar nicht sortiert. Vielen Dank für eine Antwort! Gruss, peachplayer Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
MaZy Geschrieben 1. Oktober 2019 Melden Share Geschrieben 1. Oktober 2019 Kannst ja System.Linq benutzen und dann die Sort funktion benutzen. Ich meine Strings können auch sortiert werden, da ja eigentlich dahinter hexdecimal stecken. Oder musste du jetzt dein Code dabei verwenden? Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Thariel Geschrieben 1. Oktober 2019 Melden Share Geschrieben 1. Oktober 2019 Kannst du nicht das Datum als DateTime speichern und erst in ein string umwandeln, wenn das gefordert wird? Dies hat dann viele Vorteile. Falls das Datum nur als string vorliegt, würde ich beim einlesen die strings in DateTime umwandeln. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
peachplayer Geschrieben 1. Oktober 2019 Autor Melden Share Geschrieben 1. Oktober 2019 Danke für die Antwort! Der Vorschlag mit DateTime funktioniert wirklich! Nur habe ich jetzt das Problem, dass das Datum wie folgt ausgegeben wird : 10/1/2019 12:00:00 AM Die Zeitangabe bräuchte ich nicht. Wie kann man das korrigieren? Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Thariel Geschrieben 1. Oktober 2019 Melden Share Geschrieben 1. Oktober 2019 Indem du die Ausgabe formatierst. Zum Beispiel so: string datum = dateTime.ToString("dd.MM.yyyy"); Da gibt es sehr viele Möglichkeiten. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Recommended Posts
Archiviert
Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.