s0h0 Geschrieben 16. September 2008 Geschrieben 16. September 2008 ich hab ehrlich gesagt einfach mal paar beispiele aus dem inet kopiert ohne sie näher anzuschaun... aber du hast auf jeden fall recht! Zitieren
kasumi Geschrieben 16. September 2008 Autor Geschrieben 16. September 2008 ok also die beispiele sehen leider nahezu überall so aus, was das thema splitten betrifft: string s = "Oh, I hadn't thought of that"; char[] separators = new char[] {' ', ','}; 1. zeile 1 kommt für mich nicht in frage da ich ja keine feste satzvorgabe habe 2. die splitten immer nach zeichen wie . oder , was ich ja auch nich habe. 3. die tages und zeitenangaben ändern sich ja auch ständig, also kann ich da auch nicht nach nem direkten string fragen bzw diesen vergleichen. Wed Mar 02 12:41:36 2005 und wie ich aus dieser zeile 12:43:43 Checkpoint Completed: duration was 0 seconds. die null herausfiltern soll ist mir nach wie vor ein rätsel:confused: ich muss ja wenn dann mit dem wort duration beginnen und da komm ich mit StartsWith und EndWith überhaupt nich weiter:confused: ???????????????? Zitieren
Franzose Geschrieben 16. September 2008 Geschrieben 16. September 2008 1. zeile 1 kommt für mich nicht in frage da ich ja keine feste satzvorgabe habe du hast einen festen stream 2. die splitten immer nach zeichen wie . oder , was ich ja auch nich habe. dann nimm das leerzeichen 3. die tages und zeitenangaben ändern sich ja auch ständig, also kann ich da auch nicht nach nem direkten string fragen bzw diesen vergleichen. Wed Mar 02 12:41:36 2005 via case abfragen ob da mittwoch, donnerstag, schiess mich tot steht es gibt ja nur 7 wochentage und wie ich aus dieser zeile 12:43:43 Checkpoint Completed: duration was 0 seconds. die null herausfiltern soll ist mir nach wie vor ein rätsel:confused: das lösst sich, wenn du die zeile in einzelne teile zerlegst von selbst. Dann ist es das vorletzte objekt im array, oder was du auch immer benutzen wirst. ich muss ja wenn dann mit dem wort duration beginnen und da komm ich mit StartsWith und EndWith überhaupt nich weiter:confused: ???????????????? musst du das? Zitieren
s0h0 Geschrieben 16. September 2008 Geschrieben 16. September 2008 regularexpressions könnten dir da weiterhelfen... Zitieren
TDM Geschrieben 16. September 2008 Geschrieben 16. September 2008 1. zeile 1 kommt für mich nicht in frage da ich ja keine feste satzvorgabe habe Seh den String einfach als Zeile. 2. die splitten immer nach zeichen wie . oder , was ich ja auch nich habe. Splitte nach Leerzeichen. 3. die tages und zeitenangaben ändern sich ja auch ständig, also kann ich da auch nicht nach nem direkten string fragen bzw diesen vergleichen. Wed Mar 02 12:41:36 2005 DateTime.TryParse Method (String, DateTime) (System) und wie ich aus dieser zeile 12:43:43 Checkpoint Completed: duration was 0 seconds. die null herausfiltern soll ist mir nach wie vor ein rätsel:confused: regex oder replace + constains Zitieren
s0h0 Geschrieben 16. September 2008 Geschrieben 16. September 2008 aber sieht doch schonmal gut aus. du kannst die datei auslesen. jetzt musst du dsie daten nur noch manipulieren und wieder wohin schreiben. die halbe miete hast du ja schon. Zitieren
kasumi Geschrieben 16. September 2008 Autor Geschrieben 16. September 2008 das lösst sich, wenn du die zeile in einzelne teile zerlegst von selbst. Dann ist es das vorletzte objekt im array, oder was du auch immer benutzen wirst. dann muss ich also das so schreiben und am ende in die klammer so viele ' ', schreiben wie ich worte habe??? char[] irgendwas = new char[] {' ', ','}; du sagst ich hab nen ganzen stream, schon, aber der geht doch nich nur bis zum ende der zeile sondern bis zum ende der textdatei???? ich will doch aber nur die zeile? musst du das? naja ich wüsste nich wie ich es sonst machen sollte:confused: Zitieren
TDM Geschrieben 16. September 2008 Geschrieben 16. September 2008 du sagst ich hab nen ganzen stream, schon, aber der geht doch nich nur bis zum ende der zeile sondern bis zum ende der textdatei???? ich will doch aber nur die zeile? string alles = //irgendwie gefüllt string lines[] = alles.split('\n'); string words = lines[0].split(' '); O.o Zitieren
flashpixx Geschrieben 16. September 2008 Geschrieben 16. September 2008 Aufpassen mit dem "alles.split('\n')". Man muss in der Datei wissen wir der Zeilenumbruch kodiert wurde, dies '\n\r' sein: Textdatei ? Wikipedia Phil Zitieren
Franzose Geschrieben 16. September 2008 Geschrieben 16. September 2008 dann muss ich also das so schreiben und am ende in die klammer so viele ' ', schreiben wie ich worte habe??? char[] irgendwas = new char[] {' ', ','}; ich hab das gefühl, du liest dir ganz und garnicht durch, was bestimmte methoden machen. die split methode kann einen string splitten. Dazu musst du der methoden sagen, wo sie auftrennen muss. Das kann ein zeichen sein aber auch von mir aus 100. darum übergib split nur das ' ' dafür brauchst du dann garkein char-array. du sagst ich hab nen ganzen stream, schon, aber der geht doch nich nur bis zum ende der zeile sondern bis zum ende der textdatei???? ich will doch aber nur die zeile? naja ich wüsste nich wie ich es sonst machen sollte:confused: naja dann lies das ganze nur zeilenweise aus. Zitieren
kasumi Geschrieben 16. September 2008 Autor Geschrieben 16. September 2008 was mach ich denn jetzt mit der zeile hier ? case "mon": Console.WriteLine("???"); ich vergleiche die wochentage aber die brauch ich ja nich in die console schreiben? wie schreib ich das denn direkt in die datei? und was kommt in die klammern? meno ich check den mist net sorry, wer hat nur das programmieren erfunden?:upps Zitieren
s0h0 Geschrieben 16. September 2008 Geschrieben 16. September 2008 du gehst auch echt unstrukturiert an die sache. erstmal die sachen auslesen. wenn das klappt die zeilen splitten.... und wennnnnnnnnnn das klappt dannnnnnn in ne datei schreiben! Zitieren
kasumi Geschrieben 16. September 2008 Autor Geschrieben 16. September 2008 ja toll, bei mir geht bis jetzt aber gar nichts:( ich kann mit den stichworten kreuz und quer kaum was anfangen, für euch ist das alles logisch und easy schon klar, für mich aber fremdsprache. Ich tu mich einfach voll schwer mit dem zeugs:( Zitieren
s0h0 Geschrieben 16. September 2008 Geschrieben 16. September 2008 dann wuerd ich das meinem chef sagen Zitieren
kasumi Geschrieben 16. September 2008 Autor Geschrieben 16. September 2008 meinem chef geht das am a.... vorbei. Etwa alle 5 monate kommt er zu mir und will von mir so nen müll, obwohl er genau weiß ich kann nix. Und ansonsten existier ich nich. Den ganzen schrott sollte ich schon längst können, denn die aufgabe is eigentlich anfängerzeugs. naja, am besten er macht das glei selber, ich kriegs bis ende der woche eh nich hin. Zitieren
s0h0 Geschrieben 16. September 2008 Geschrieben 16. September 2008 StreamReader sr = new StreamReader("C:\\file.txt"); // öffnet einen stream zurtextdatei string[] test = sr.ReadToEnd().Split('@'); //liest die datei bis zum ende aus und trennst bei einem @ zeichen sr.Close(); //beendet den datenstrom statt readtoend gibt es noch andere funktionen z.B.: readline... und damit ist die datei schon so gut wie ausgelesen Zitieren
s0h0 Geschrieben 16. September 2008 Geschrieben 16. September 2008 du hast bis ende der woche noch 24h zeit! da besteigen manche den mounteverest versuch einfach morgen strukturiert loszulegen. und les alles was dir dazu in die finger kommt Zitieren
kasumi Geschrieben 16. September 2008 Autor Geschrieben 16. September 2008 ok, ich versuch's nochmal:) danke. Zitieren
s0h0 Geschrieben 16. September 2008 Geschrieben 16. September 2008 myCSHARP :: Die deutschsprachige C# Community :: ist auch ein sehr gutes forum und etwas spezialisierter... allerdings werden die dir auch kein fertiges ding liefern. aber da ruhig mal die suche benutzen. Zitieren
Franzose Geschrieben 16. September 2008 Geschrieben 16. September 2008 meinem chef geht das am a.... vorbei. Etwa alle 5 monate kommt er zu mir und will von mir so nen müll, obwohl er genau weiß ich kann nix. Und ansonsten existier ich nich. Den ganzen schrott sollte ich schon längst können, denn die aufgabe is eigentlich anfängerzeugs. naja, am besten er macht das glei selber, ich kriegs bis ende der woche eh nich hin. nimm mal dich in die verantwortung, und nicht deinen chef. Für mich verlangt er von dir kein unding, somal man string manipulationen sogar im 1 lehrjahr BS lernt. man muss das ganze nur auf c# umdenken, da ja meist eine andere Sprache gelehrt wird. Und die geschichte mit dem dateiauslesen kann man sich googeln. Darum mach mal was aus dem ganzen ... sonnst liest man mal wieder in einem jahr "Im 3. lehrjahr und nichts gelernt". Die antworten darauf sind immer die selben.... Wie gesagt ich empfehle dir http://www.microsoft.com/germany/msdn/webcasts/serien/MSDNWCS-0604-01.mspx & Details zur Veranstaltung: Einführung in das .NET Framework (Teil 1-10) [1032330903] - Microsoft Deutschland GmbH viel spass dabei Zitieren
kasumi Geschrieben 18. September 2008 Autor Geschrieben 18. September 2008 schlecht:( mein ausbilder war zwar so nett mir zu zeigen wie man mit nem split eine zahl aus ner zeile herausfiltert, in seinem beispiel aber hat er nem string eine textzeile übergeben um mir das zu zeigen, was mir ja überhaupt nichts bringt da ich nich weiß wie ich mithilfe eines splits aus einer textdatei filter. erst mal muss ich ja die zeile anhand eines identischen wortes abfragen, ja und dann weiß ich nich weiter........weil das einzigste wort um die zeile nicht mit anderen zu verwechseln checkpoint completed ist, so und dann wollte ich die ganze zeile auf ne zahl prüfen, aber wie schreib ich das? auf ne zahl prüfen kein problem aber was ist hier die aktuelle ganze zeile ab dem abfragewort checkpoint completed? wenn der cursor also an dieser stelle ist und ich schreibe dateiinhalt.ReadLine(), list er dann genau diese zeile sodass ich damit die abfrage machen kann??? Zitieren
s0h0 Geschrieben 18. September 2008 Geschrieben 18. September 2008 (bearbeitet) ich hab zwar nicht verstanden was jetzt schon geht und was noch das problem ist... aber so wird in die textbox2 nur die zeile mit checkpoint completed geschrieben... using (StreamReader sr = new StreamReader("../../log.txt")) { String line; // Read and display lines from the file until the end of // the file is reached. while ((line = sr.ReadLine()) != null) { bool b; b = line.Contains("Checkpoint Completed"); if ( textBox2.Text += line + Environment.NewLine; } } wenn du jetzt die 0 rauslesen willst, dann musst die ganze zeile einfach an jeden leerzeichen splitten, dann ist die fuenfte stelle in deinem array die zahl.... string [] split = line.Split(new Char [] {' '}); split[5] // hier steht dann deine zahl.... Bearbeitet 18. September 2008 von s0h0 Zitieren
s0h0 Geschrieben 19. September 2008 Geschrieben 19. September 2008 nochmal der vollständigkeit wegen. Regex rx = new Regex(@"[a-zA-Z]"); // Create an instance of StreamReader to read from a file. // The using statement also closes the StreamReader. using (StreamReader sr = new StreamReader("../../log.txt")) { String line; // Read and display lines from the file until the end of // the file is reached. while ((line = sr.ReadLine()) != null) { bool b; b = line.Contains("Checkpoint Completed"); if ( { split = line.Split(new Char[] { ' ' }); textBox2.Text += line + Environment.NewLine + split[5].ToString() + Environment.NewLine; } split2 = line.Split(new Char[] { ' ' }); if (rx.IsMatch(split2[0])) { textBox3.Text += line + Environment.NewLine; } } } 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.