1. #1

    Registriert seit
    12.12.2012
    Beiträge
    180
    Thanked 55 Times in 41 Posts

    Standard [c#] Tool um bestimmte Namen auszulesen bzw eintragen zu können

    Halli Hallo :p

    Ich brauche eure Hilfe, undzwar möchte ich mir ein kleines Tool basteln was mir ermöglicht bestimmte Namen aus 2 verschiedenen .txt Dokumenten auszulesen & sie ggf. ihre Werte dazu ausgeben.

    Meine Form besitzt:

    - Eine Textbox (Hier wird der Name eingeben)

    - Eine Combobox (2 Einträge = Gezahlt & Nichtgezahlt)

    - Ein Button zum "Loaden" & Ein zum "Saven"

    - Eine Listview (Hier wird der Wert ausgegeben!)

    Erste Funktion:

    Ich habe 2 .txt Dokumente "Gezahlt.txt" & "Nichtgezahlt.txt" in diesen Dokumenten sind verschiedene Namen eingetragen! z.B PeterMustermann123 ist im Dokument "Nichtgezahlt" Wenn ich jetzt in meine Textbox "PeterMustermann123" eingebe und auf Load klicke, möchte ich das mir das Tool in meiner Listview(kann auch ein Label sein) einfach nur "Nichtgezahlt" auflistet, aber falls sich der Name in keiner der beiden Dokumenten befindet, soll mir das Tool einfach nur den Wert "Unknown" auflisten.

    Zweite Funktion:

    Ich trage ein Namen(in diesen Fall einen der noch in keiner der beiden Dokumente aufgelistet) in die Textbox ein & Wähle den Eintrag "Gezahlt" aus meiner ComboBox aus und Drücke auf Save so möchte Ich das der Name aus der Textbox in das Dokument "Gezahlt.txt"gespeichert wird

    Das wars eigentlich auch schon, wer kann mir da Helfen?`würde auch 50 Knuddels dafür Zahlen falls erwünscht

  2. #2
    Avatar von DMW007
    Registriert seit
    15.11.2011
    Beiträge
    6.080
    Thanked 9.118 Times in 2.995 Posts
    Blog Entries
    5

    Standard AW: [c#] Tool um bestimmte Namen auszulesen bzw einzutragen zu können

    So mit zwei getrennten Dateien macht man das nicht. Jede Person ist ein Datensatz und hat ein Attribut für den Zahlstatus, also ganz einfach abgebildet könnte das Model dafür beispielsweise wie folgt aussehen:

    class Person {
    public string Name { get; set; }
    public bool HasPaid { get; set; }
    }

    Für das Speichern würde ich JSON/XML nutzen. Da hast du ein einheitliches, fertiges Format, dass du mit einer Zeile serialisieren bzw. deserialisieren kannst. Und zwar ganz ohne jedes Gefrickel. Ab einer gewissen Anzahl an Datensätzen ist das abhängig von den gespeicherten Infos aber auch keine besonders gute Idee, da jedes mal die gesamten Datensätze geladen werden und die Lösung somit inperformant wird. Dann wäre eine Datenbank die bessere Lösung. Da werden dann nämlich auch nicht immer die gesamten Datensätze geladen, sondern lediglich jene welche auch gebraucht werden (z.B. anhand des Namens über eine Suchmaske) abgefragt. Wenn das eher in kleineren Dimensionen bleiben soll ist es durchaus okay eine Datei zu nutzen.

    Generell frage ich mich aber, wo für diesen Anwendungszweck der Sinn/Mehrwert bei einer selbst entwickelten Anwendung liegen soll. Ist da noch eine Erweiterung/Automatisierung geplant, oder geht es mehr ums Lernen und weniger um das fertige Resultat? Ansonsten scheint es mir nämlich, als ob eine Excel-Tabelle mit zwei Spalten im Endeffekt dasselbe Ergebnis bringen würde, aber mit weniger Aufwand. Flexibler wäre es ggf. auch, da eine Tabelle auch problemlos auf Mobilgeräten bearbeitet werden kann - Mit einer .NET-Anwendung wird das schwierig, wenn man nicht gerade ein aktuelleres Windows-Phone/Table hat.


  3. #3

    Registriert seit
    31.10.2015
    Beiträge
    7
    Thanked 0 Times in 0 Posts

    Standard AW: [c#] Tool um bestimmte Namen auszulesen bzw einzutragen zu können

    Ich denke nicht das es sich hier um ein System handelt das produktiv genutzt werden soll. Deshabl erschließt sich mir der Sinn einer Datenbank nicht ganz. Wieso mit Kanonen auf Spatzen schießen (erstmal muss so ne Datenbank ja auch aufgesetzt werden, dann muss man etwas von SQL wissen und dann muss er wissen wie er diese Daten dann im Programm abruft).

    Ansonst ist eine XML-Datei wirklich der beste Weg um diese Daten abzuspeichern. Wenn du die Daten neu ordnest pack um himmelswillen alles in eine Datei. Es wird dann um Längen einfacher.

    Wenn du weiterhin aus zwei Dateien lesen willst würde sich in etwa so eine Lösung anbieten

    Code:
    string[] paid = {"tom", "peter"};
    string[] notpaid = {"kim", "harald"};
    
    string nameToSearch = "kim";
    
    if(paid.Contains(nameToSearch)) {
    	return "Gezahlt";
    }
    else if(notpaid.Contains(nameToSearch)) {
    	return "Nicht Gezahlt";
    }
    else {
    	return "Unknown";
    }

Ähnliche Themen

  1. Antworten: 11
    Letzter Beitrag: 25.12.2013, 16:24
  2. Domain registrieren was bei Nameserver eintragen?
    Von Festplatte im Forum Webmaster
    Antworten: 7
    Letzter Beitrag: 17.06.2013, 04:22
  3. BF3 bestimmte Spielmodi
    Von ElkosMED im Forum Battlefield
    Antworten: 2
    Letzter Beitrag: 24.05.2013, 21:21
  4. ESL Gameaccount eintragen
    Von Deluxe im Forum Ego-Shooter
    Antworten: 3
    Letzter Beitrag: 22.12.2012, 17:19
  5. Können meine Eltern.....?
    Von maydi96 im Forum Internet und Technik
    Antworten: 17
    Letzter Beitrag: 29.02.2012, 01:18
Diese Seite nutzt Cookies, um das Nutzererlebnis zu verbessern. Klicken Sie hier, um das Cookie-Tracking zu deaktivieren.