Autor Beitrag
Andre06
Hält's aus hier
Beiträge: 11

Win 7, Win 8
C# (VS 2010, VS 2012)
BeitragVerfasst: Do 02.01.14 23:18 
Hallo zusammen,

Nach langer Zeit habe ich mal wieder eine Frage! Habe bis jetzt nichts brauchbares gefunden, oder falsch gesucht.

Ich lese aus einer Textdatei verschiedene Informationen aus. Diese verschiedenen Informationen sollen in die dementsprechenden Variablen geschrieben werden.

Als Beispiel: der Text: "{a}25;{b}64" und dazu gibt es die Variablen a und b. Jetzt möchte ich dass das Programm selber herausfindet, welche Werte es in welche Variablen reinschreibt.

Also Ziel ist es dann aus "{a}25;{b}64" dann dieses Ergebnis zu bekommen: a=25, b=64... So das die geschweiften Klammern im String dem Programm quasi als Anweisung dienen und dann der Buchstabe als Zuweisung für die entsprechende Variable genutzt wird. Die "Anweisungen" (das in den geschweiften Klammern) und die Variablen heißen gleich.

Ist das realisierbar? Weil man kann sowas ja auch mit if-Abfragen lösen (if string == "a" dann schreib den Wert in a) aber wenn man viele Variablen hat ist das viel zu umständlich und vielleicht gibt es eine einfache Möglichkeit?! Ich hoffe ich konnte mich klar genug äußern!

LG Andre06

EDIT: Vielleicht um es klarer auszudrücken: Ich will eine Variable ansprechen, indem ich gucke was in den geschweiften Klammern steht. Also will ich eine Variable über einen String ansprechen.

_________________
Der größte Kampf, ist der Kampf mit sich selbst. Und der größte Sieg, ist der Sieg über sich selbst. Goethe
jfheins
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 918
Erhaltene Danke: 158

Win 10
VS 2013, VS2015
BeitragVerfasst: Fr 03.01.14 01:03 
Mit richtigen Variablennamen geht das nicht so ohne weiteres. Ich würde dir ein Dictionary<string, double> empfehlen. Dort kannst du genau so zu jedem Namen einen Wert speichern. Die Anweisung könntest du dann mit einem RegEx parsen und die entsprechende Variable (in dem Dictionary) auf den entsprechenden Wert setzen.

Für diesen Beitrag haben gedankt: Andre06
Andre06 Threadstarter
Hält's aus hier
Beiträge: 11

Win 7, Win 8
C# (VS 2010, VS 2012)
BeitragVerfasst: Do 09.01.14 21:45 
Hallo jfheins,

danke für die Antwort... Ich werde mir das in den nächsten Tagen mal ansehen! Auf jeden Fall danke!

LG Andre06

_________________
Der größte Kampf, ist der Kampf mit sich selbst. Und der größte Sieg, ist der Sieg über sich selbst. Goethe