Laden...

Datei und Seperatoren

Erstellt von schmalhans vor 18 Jahren Letzter Beitrag vor 18 Jahren 1.742 Views
S
schmalhans Themenstarter:in
44 Beiträge seit 2005
vor 18 Jahren
Datei und Seperatoren

Hallo ich habe glaube ich ein ziemlich einfaches Problem.

Problem ist, dass ich nicht weiß wonach ich suchen muss um Beiträge dazu zu finden.

Ich möchte eine Datei auslesen, in der z.B. folgendes steht:

Name: Schmidt
Vorname: Walter
Strasse: Musselweg 12
Ort: Gnibistadt

Ich möchte jetzt die Datei mit .readLine() in einen String einlesen und dann den string ab dem ":" in einen neuen String speichern. Wie kann ich das umsetzen?

Denke sicher, dass ist nur 1 Zeile, aber ich weiß nicht wie ich drauf kommen soll.

Danke schonmal im vorraus.

Gruß
schmalhans

1.985 Beiträge seit 2004
vor 18 Jahren

Original von schmalhans
Hallo ich habe glaube ich ein ziemlich einfaches Problem.

Problem ist, dass ich nicht weiß wonach ich suchen muss um Beiträge dazu zu finden.

Ich möchte eine Datei auslesen, in der z.B. folgendes steht:

Name: Schmidt
Vorname: Walter
Strasse: Musselweg 12
Ort: Gnibistadt

Ich möchte jetzt die Datei mit .readLine() in einen String einlesen und dann den string ab dem ":" in einen neuen String speichern. Wie kann ich das umsetzen?

Denke sicher, dass ist nur 1 Zeile, aber ich weiß nicht wie ich drauf kommen soll.

Danke schonmal im vorraus.

Gruß
schmalhans

Hallo schmalhans,

eine Möglichkeit ist, auf der ausgelesenen Zeile die Methode .Split() anzuwenden. Dieser Methode kannst Du dann als Parameter den Doppelpunkt übergeben und sie splittet Dir den String auf.
Als Rückgabe erhälts Du ein String-Array. Jedes Element des Arrays ist ein dann ein Teilstring.

Wenn Du in der SDK-Doku nach Split suchst, solltest Du sehr schnell fündig werden und auch Beispiele dazu finden.

Gruß,
Fabian

"Eine wirklich gute Idee erkennt man daran, dass ihre Verwirklichung von vornherein ausgeschlossen erscheint." (Albert Einstein)

Gefangen im magischen Viereck zwischen studieren, schreiben, lehren und Ideen umsetzen…

Blog: www.fabiandeitelhoff.de

S
schmalhans Themenstarter:in
44 Beiträge seit 2005
vor 18 Jahren

Wenn ich aber ja nur den Teil nach dem ":" haben möchte?

Dann hätte ich das so gemacht:

strText = strRead.split(':').ToString();

Dann speichert er mir aber in strText "System.String[]", was mach ich falsch?

N
42 Beiträge seit 2005
vor 18 Jahren

Hallo Schmalhans,

wenn ich deine Syntax mal aufgreife bringt dies wohl das gewünschte Ergebnis:

strText = (strRead.Split(':'))[1].ToString();

Gibt aber vielleciht noch bessere Wege zum gewünschten Ergebnis.
Zumindest funktionieren sollte es aber.

Gruß
Nargo

563 Beiträge seit 2004
vor 18 Jahren

warum speicherst du diese daten nicht in einer xml datei? die ist einfacher zu parsen, resp. es hat gibt schon klassen dazu!

1.985 Beiträge seit 2004
vor 18 Jahren

Original von .unreal
warum speicherst du diese daten nicht in einer xml datei? die ist einfacher zu parsen, resp. es hat gibt schon klassen dazu!

Morgen .unreal,

ob das wirklich einfacher ist, ist die Frage. Er hat nicht geschrieben, woher die Datei kommt (schreibt er sie selber oder bekommt er sie "geliefert" etc.).

Wenn er sie nur geliefert bekommt, wäre ein vorheriges Umwandeln in eine XML-Datei evtl. sogar unnütze Mehrarbeit.

Gruß,
Fabian

"Eine wirklich gute Idee erkennt man daran, dass ihre Verwirklichung von vornherein ausgeschlossen erscheint." (Albert Einstein)

Gefangen im magischen Viereck zwischen studieren, schreiben, lehren und Ideen umsetzen…

Blog: www.fabiandeitelhoff.de

S
schmalhans Themenstarter:in
44 Beiträge seit 2005
vor 18 Jahren

Die Dateien existieren schon auf dem HOST, da kann ich schlecht alle zu xml umsetzen. Meine Kollegen würden sich bedanken. 😉

Ich werde es mal mit nargos Lösung probieren. Bin aber weiter für Anregungen offen.

Danke schonmal soweit.
Gruß
schmalhans

563 Beiträge seit 2004
vor 18 Jahren

er hat nicht geschrieben, dass er die daten kriegt, und nicht ändern kann. logisch ist umkonvertieren einen mehraufwand, hätte er aber diese daten selber geschrieben, wäre xml die lösung gewesen.

sowas parsen ist eigenltich nicht wirklich schwierig. regex oder mit substring rumfummeln 😉