trance_steve Geschrieben 12. November 2008 Geschrieben 12. November 2008 Hallo! Ich hab da ein Problem. Ich möchte aus einer Textdatei auslesen. Das wäre ja an sich nciht das Problem, ich möchte eben nur gewisse Teile auslesen die ich dann in eine csv datei schreibe. Also ich möchte nur die auf das Stichwort folgenden Wörter in die csv datei schreiben. ICh kann zwar durchsuchen ob sich das Stichwort in meiner Datei befindet, aber wie kann ich die darauffolgenden Wörter in meine csv datei bringen? Ich hoffe ich konnte mein Problem klar Darstellen, MfG, Steve Zitieren
Hahne Geschrieben 12. November 2008 Geschrieben 12. November 2008 Könntest du vllt mal eine Beispielzeile posten und dann anhand des Beispieles erklären was du genau rausfiltern möchtest??? Wie genau ist der Aufbau der Textdatei? Ist die immer gleich oder nicht? Zitieren
trance_steve Geschrieben 12. November 2008 Autor Geschrieben 12. November 2008 Danke für die promte Antwort! Hier also ein kleiner Auszug aus meiner Textdatei: 2008-10-16 08:01:47,815 DEBUG dataReceived() analyse telegram: _BDAT_;16.10.2008 08:01:47;ZUST;300213C0;WE__;W1169;;NICHSTOE;FREI;NICHBESP;NICHUMSP;LINKS;VERSCHL; Das erhalte ich in einer Zeile. Für mich interessant sind danach: WE__; W1169; NICHSTOE; FREI; NICHBESP; NICHUMSP; LINKS; VERSCHL; und eventuell noch das Datum samt Zeit. Zwichendurch sind allerdings immer wieder Zeilen dabei die für mich nicht von Bedeutung sind. Diese Werte möchte ich danach in ein CSV oder Excel File bringen, damit ich diese mit WinCC weiterverwenden kann. Am besten wäre es wenn ich diese Werte noch nach den "W1169" sortieren könnte, da es hier die verschiedensten Zahlen gibt. MfG, steve Zitieren
Hahne Geschrieben 12. November 2008 Geschrieben 12. November 2008 Also ich gehe mal davon aus (jedenfalls sieht das vom Aufbau so aus) als wäre die Textdatei die du öffnest ebenfalls eine CSV Datei. Zumindest sind die Werte mit ; getrennt. Du kannst doch erstmal alle Werte pro Zeile auslesen in einen String. Danach nimmst du diesen String und Splittest ihn und speicherst die gesplitteten Werte in ein Array. string [] arData = new string[größe des arrays]; arData = meinString.Split(';'); Jetzt schaust du erstmal in welchen Arrayfeld welcher Wert drin steht und suchst dir die Arrayfelder raus die für dich relevant sind. Diese Werte fügst du dann wieder zusammen... hier ma ein Beispiel: string CsvLine = arData[0] + ";" + arData[3] + ";" + arData[4]; und wenn du dann deinen String neu zusammengebaut hast kannst du jede einzelne Zeile die du vorher eingelesen hast neu wieder in eine neue CSV-Datei speichern. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.