Wie konvertiert man ein 2D-Array in ein Dictionary-Objekt?

8

Ich habe ein Array vom Typ string, das so aussieht: %Code%. Dies ist im Wesentlichen ein 2D-Array wie so [test1] [Wahr] [test2] [Falsch] [test3] [Falsch] [test4] [Wahr].

Ich möchte dies in eine "test1|True,test2|False,test3|False,test4|True" mit linq konvertieren, etwa wie folgt:

%Vor%

irgendwelche Ideen?

    
Webcognoscere 12.05.2010, 09:13
quelle

4 Antworten

5

Drehen Sie zuerst Ihre Zeichenfolge in ein richtiges Array:

%Vor%

Dann können Sie die String[] in ein Wörterbuch verarbeiten:

%Vor%

Die ToDictionary -Methode benötigt zwei Funktionen, die die Schlüssel- und Elementdaten aus jeder Quelle extrahieren Array-Element.

Hier habe ich jede Hälfte durch Aufteilen auf die "|" und dann habe ich die erste Hälfte als Schlüssel benutzt und die zweite habe ich in ein bool geparst, um es als Element zu verwenden.

Offensichtlich enthält dies keine Fehlerprüfung, daher könnte es fehlschlagen, wenn die Quellzeichenfolge nicht durch Kommas getrennt war oder wenn jedes Element nicht durch eine Pipe getrennt war. Sei also vorsichtig damit, woher deine Quellen stammen. Wenn es nicht genau mit diesem Muster übereinstimmt, wird es scheitern, also müssen Sie einige Tests und Validierung durchführen.

Marcelos

    
Simon P Stevens 12.05.2010, 09:21
quelle
8
%Vor%     
Marcelo Cantos 12.05.2010 09:20
quelle
-1

Sie könnten so etwas ausprobieren:

%Vor%     
JamesStuddart 12.05.2010 09:22
quelle
-1

So etwas sollte funktionieren:

%Vor%     
Thomas 12.05.2010 09:21
quelle

Tags und Links