Zum Inhalt springen

log datei in c# auslesen


kasumi

Empfohlene Beiträge

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:

????????????????

Link zu diesem Kommentar
Auf anderen Seiten teilen

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?

Link zu diesem Kommentar
Auf anderen Seiten teilen

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

Link zu diesem Kommentar
Auf anderen Seiten teilen

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:

Link zu diesem Kommentar
Auf anderen Seiten teilen

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.

Link zu diesem Kommentar
Auf anderen Seiten teilen

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

Link zu diesem Kommentar
Auf anderen Seiten teilen

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.

Link zu diesem Kommentar
Auf anderen Seiten teilen

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 :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

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

Link zu diesem Kommentar
Auf anderen Seiten teilen

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???

Link zu diesem Kommentar
Auf anderen Seiten teilen

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 (B)

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 von s0h0
Link zu diesem Kommentar
Auf anderen Seiten teilen

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 (B)

{

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;

}

}

}

Link zu diesem Kommentar
Auf anderen Seiten teilen

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.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...