Autor Beitrag
neno
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Mi 14.05.08 17:30 
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.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: 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

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
neno Threadstarter
Hält's aus hier
Beiträge: 8



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

------------------------------------------------------

ausblenden 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")); // Wenn der Haken gesetzt ist erscheint das geschriebene

                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 www.bla.de/Log.txt.

Ich hoffe es ist verständlich

Vielleicht habt ihr, oder du, ein paar Tipps:) Danke
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Mi 14.05.08 18:06 
user profile iconneno 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.

user profile iconneno 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.

user profile iconneno 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 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! :-)

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
neno Threadstarter
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Mi 14.05.08 18:26 
Listbox.Items.Add(lbShow.Text)


Das wars:) Geil. Danke!!!!!