Entwickler-Ecke
IO, XML und Registry - Letze Zeiler einer Textdatei ausgeben
neno - Mi 14.05.08 17:30
Titel: Letze Zeiler einer Textdatei ausgeben
Hallo, ich beschäftige mich seit 2 Tagen mit C#:-)
Ich bekomm es aber nicht hin, die letze Zeile einer .txt Datei auszugeben.
Ich hab ein kleines "Chat" Programm gemacht, welches die Eingabe in einer Textbox in ner txt Datei speichert und bei einem Haken enablen in ner Listbox ausgibt. Jetzt will ich aber noch, das, wenn man auf "Senden" klickt, die letze neuste Zeile wieder in die LIstbox , bzw txt Datei geschrieben wird. Danke!
Christian S. - Mi 14.05.08 17:37
Hallo und :welcome:!
Wo genau hakt's denn jetzt? Wie sehen Deine Ansätze aus? :-)
Wenn ich Dich richtig verstanden habe, kannst Du doch die Eingabe von der Textbox sowohl in die Datei als auch in die Listbox schreiben, ohne sie nochmals aus der Datei lesen zu müssen? :gruebel:
Grüße
Christian
neno - Mi 14.05.08 17:59
Also zuerstmal, wenn das ein kleines Chatprogramm werden sollte, dann soll die Eingabe ja wo gespeichert werden um dann abgerufen zu werden (so eine Art LogDatei). Also so hab ich mir das gedacht.
Ich habs nämlich auch nicht hinbekommen, das ich in die Listbox (oder Textbox) etwas schreiben kann, ohne das dass vorhergeschriebene gelöscht wird. Man will ja sehen was man schreibt
Ansatz hab ich leider wirklich garkeinen :( Ich poste einfach mal meinen Code (Ich bitte um Verzeihung, er ist bestimmt schrecklich)
------------------------------------------------------
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30:
| private void cmdSend_Click(object sender, EventArgs e) { lbShow.Text = txtName.Text + " schreibt: " + txtSend.Text; String filename = "C:\\Hallo.txt"; String myLine = lbShow.Text + Environment.NewLine; File.AppendAllText(filename, myLine); txtSend.Text = ""; }
private void chkOK_CheckedChanged(object sender, EventArgs e) {
if (chkOK.Checked == true)
{ lbShow.Items.AddRange(File.ReadAllLines("C:\\Hallo.txt")); cmdSend.Enabled = true; txtName.Enabled = false; }
if (chkOK.Checked == false) { cmdSend.Enabled = false; txtName.Enabled = true; } } } } |
----------------------------------------------------------------
Ein zweites Problem, was ich schliesslich nun habe, das ich ja die Textdatei lokal bei mir liegen habe. Ich wollte aber das die Leute, die das Programm besitzen in eine Logdatei schreiben die auf meinem Server liegt. (Schreib&Leserechte sind gesetzt) . Beispielsweise
http://www.bla.de/Log.txt.
Ich hoffe es ist verständlich
Vielleicht habt ihr, oder du, ein paar Tipps:) Danke
Christian S. - Mi 14.05.08 18:06
neno hat folgendes geschrieben: |
Also zuerstmal, wenn das ein kleines Chatprogramm werden sollte, dann soll die Eingabe ja wo gespeichert werden um dann abgerufen zu werden (so eine Art LogDatei). Also so hab ich mir das gedacht. |
Jein. Die Eingaben, die irgendwann mal getätigt wurden und nur noch in der Text-Datei liegen, müssen natürlich abgerufen werden. Aber nehmen wir mal an, der Benutzer gibt "^^" in das Programme in. Was Du vorschlägst, ist, den Text in die Datei zu schreiben und sofort danach wieder aus der Datei zu lesen, um ihn dann in die listbox zu packen. Den Schritt mit dem Lesen aus der Datei kannst Du Dir aber sparen, denn Du kennst den Text ja schon.
neno hat folgendes geschrieben: |
Ich habs nämlich auch nicht hinbekommen, das ich in die Listbox (oder Textbox) etwas schreiben kann, ohne das dass vorhergeschriebene gelöscht wird. Man will ja sehen was man schreibt |
Listbox.Items.Add(lbShow.Text) sollte das machen.
neno hat folgendes geschrieben: |
Ein zweites Problem, was ich schliesslich nun habe, das ich ja die Textdatei lokal bei mir liegen habe. Ich wollte aber das die Leute, die das Programm besitzen in eine Logdatei schreiben die auf meinem Server liegt. (Schreib&Leserechte sind gesetzt) . Beispielsweise http://www.bla.de/Log.txt. |
Da möchte ich Dich bitten, einen eigenen Thread für zu eröffnen, denn das geht eher in die Richtung Internet / Netzwerk. Danke! :-)
neno - Mi 14.05.08 18:26
Listbox.Items.Add(lbShow.Text)
Das wars:) Geil. Danke!!!!!
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!