Einfachste Schlüssel / Wert-Paar-Datei in .NET

7

Mein Projekt benötigt eine Datei, in der Schlüssel / Wert-Paar-Daten gespeichert werden, die vom Benutzer gelesen und geändert werden können. Ich möchte, dass das Programm nur erwartet, dass die Schlüssel vorhanden sind, und ich möchte sie so schnell wie möglich aus der Datei analysieren.

Ich könnte sie in XML speichern, aber XML ist viel zu komplex und würde Knoten und Kindknoten usw. durchqueren. Alles, was ich will, ist eine Klasse, die eine Datei entnimmt und Schlüsselwertpaare generiert. Ich möchte so wenig Fehler wie möglich behandeln, und ich möchte es mit so wenig Code wie möglich getan.

Ich könnte eine solche Klasse selbst programmieren, aber ich würde lieber lernen, wie es im Rahmen ist, als das Rad zweimal zu erfinden. Gibt es in .NET (3.5) einige eingebaute magische Klassen, die das können?

%Vor%     
Hannes Landeholm 12.11.2008, 18:29
quelle

5 Antworten

6

Verwenden Sie die KeyValuePair -Klasse für Sie Schlüssel und Wert, dann nur eine Liste auf der Festplatte mit einem XMLSerializer .

Das wäre der einfachste Ansatz, den ich fühle. Sie müssen sich keine Gedanken über das Durchqueren von Knoten machen. Der Aufruf der Deserialize-Funktion erledigt das für Sie. Der Benutzer könnte die Werte in der Datei auch bearbeiten, wenn sie dies wünschen.

    
Nicholas Mancuso 12.11.2008, 18:38
quelle
6

Ich kenne keine eingebaute Klasse, um ini-Datei zu analysieren. Ich habe nini verwendet, wenn es dazu nötig ist. Es ist lizenziert unter der MIT / X11-Lizenz, so dass kein Problem in einem geschlossenen Quellprogramm enthalten ist.

Es ist sehr zu benutzen. Wenn Sie also eine Datei "Settings.ini" auf diese Weise formatiert haben:

%Vor%

Es wäre so einfach wie:

%Vor%     
Jb Evain 12.11.2008 18:50
quelle
5

Wenn Sie nach einer schnellen und einfachen Funktion suchen und keine .Net-App \ Benutzerkonfigurations-Einstellungsdateien verwenden möchten oder sich über Serialisierungsprobleme Gedanken machen, die manchmal von Zeit zu Zeit auftreten.

Die folgende statische Funktion kann eine Datei wie "KEY = VALUE" laden.

%Vor%

Hinweis: Ich benutze ein Dictionary, so dass Schlüssel eindeutig sein müssen, was in der Regel bei der Einstellung der Fall ist.

VERWENDUNG:

%Vor%     
Kyght 07.06.2016 20:10
quelle
2

Wenn Sie möchten, dass der Benutzer die Datei lesen und ändern kann, empfehle ich ein Komma-getrenntes Paar, eins pro Zeile

%Vor%

Das Parsen ist einfach: Lesen Sie die Datei, teilen Sie sie in Newline oder Komma auf, und nehmen Sie die Elemente paarweise auf

    
Steven A. Lowe 12.11.2008 18:41
quelle
0

Formatieren Sie die Datei folgendermaßen:

%Vor%

Lesen Sie die gesamte Datei in eine Zeichenfolge (es gibt eine einfache Funktion, die das tut, vielleicht in der Datei oder String-Klasse), und rufen Sie string.Split ('=') auf. Stellen Sie sicher, dass Sie auch string.Trim () für jede Taste und jeden Wert aufrufen, während Sie die Liste durchlaufen und jedes Paar in eine Hashtabelle oder ein Wörterbuch einfügen.

    
Jeff Kotula 07.06.2016 20:11
quelle

Tags und Links