Autor Beitrag
karina2390
Hält's aus hier
Beiträge: 7



BeitragVerfasst: Mo 10.11.08 18:44 
Hallo
Ich habe ein kleines Problem. Ich habe in C# einen SaveDialog einegerichtet und die Daten, die gespeichert werden sollen stehen in mehreren Textboxen. Wenn ich dann auf speichern klicke, speichert es immer nur die Daten aus der letzten Textbox. Wie kann ich das ändern?

Ich bitte um eure Hilfe.

liebe Grüße
Karina
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Mo 10.11.08 18:47 
Wie speicherst Du die Daten denn? :gruebel:

Da gibt's viele Möglichkeiten, aber Du scheinst Dich ja schon für eine entschieden zu haben.

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



BeitragVerfasst: Mo 10.11.08 18:56 
ich speichere die Daten in eine Textdatei.

Das ist die Erste Codezeile:
ausblenden C#-Quelltext
1:
2:
                datei = saveFileDialog.FileName;
                File.WriteAllText(datei, tBEName.Text, Encoding.UTF7);


Und das die letzte:
ausblenden C#-Quelltext
1:
2:
                datei10 = saveFileDialog.FileName;
                File.WriteAllText(datei8, tbZVerwendung3 .Text, Encoding.UTF7);


und im FrmLoad habe ich noch:
ausblenden C#-Quelltext
1:
2:
3:
            saveFileDialog.DefaultExt = "txt";
            saveFileDialog.FileName = "Daten.txt";
            saveFileDialog.AddExtension = true;


Moderiert von user profile iconChristian S.: C#-Tags hinzugefügt
JüTho
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2021
Erhaltene Danke: 6

Win XP Prof
C# 2.0 (#D für NET 2.0, dazu Firebird); früher Delphi 5 und Delphi 2005 Pro
BeitragVerfasst: Mo 10.11.08 19:09 
Das war wohl ein Missverständnis.

Wenn Du auf "Speichern" drückst, sollen mehrere Vorgänge ausgeführt werden. Wo und wie steuerst Du das denn? Nach Deiner Problembeschreibung wird nur einer dieser Vorgänge erledigt. An dieser Stelle gibt es offensichtlich einen Denkfehler.

Gruß Jürgen
karina2390 Threadstarter
Hält's aus hier
Beiträge: 7



BeitragVerfasst: Di 11.11.08 08:08 
Wenn ich auf einen Button klicke dann sollen alle Daten in den Textboxen in eine Textdatei gespeichert werden. Ich habe dann eine if-Anweisung gemacht und dann die oben geschriebenen Datensätze eingefügt.

Ich weis jetzt nicht, wo mein Fehler liegen könnte.
JüTho
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2021
Erhaltene Danke: 6

Win XP Prof
C# 2.0 (#D für NET 2.0, dazu Firebird); früher Delphi 5 und Delphi 2005 Pro
BeitragVerfasst: Di 11.11.08 09:51 
user profile iconkarina2390 hat folgendes geschrieben Zum zitierten Posting springen:
Ich weis jetzt nicht, wo mein Fehler liegen könnte.

Ich auch nicht. Du musst uns wohl den kompletten EventHandler für ButtonClick angeben.

user profile iconkarina2390 hat folgendes geschrieben Zum zitierten Posting springen:
Wenn ich auf einen Button klicke dann sollen alle Daten in den Textboxen in eine Textdatei gespeichert werden.

Alle Daten zusammen in eine gemeinsame Textdatei? Oder jede Textbox in eine separate Textdatei? Da gehen Deine bisherigen Informationen durcheinander.

user profile iconkarina2390 hat folgendes geschrieben Zum zitierten Posting springen:
Ich habe dann eine if-Anweisung gemacht und dann die oben geschriebenen Datensätze eingefügt.

Ich sehe keine if-Abfrage und auch keine Datensätze, nur TextBox.Text und Dateien bzw. Dateinamen.

Vielleicht solltest Du uns auch ein Beispiel geben, wie der Inhalt einer Textdatei aussehen soll. Handelt es sich eigentlich um Multiline-Textboxen oder nicht?

Jürgen
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4805
Erhaltene Danke: 1061

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Di 11.11.08 10:15 
Du speicherst zwar die Daten in die gleiche Textdatei (obwohl du jeweils unterschiedliche Variablennamen dafür benutzt, das nicht nötig ist -), jedoch überschreibt die Methode File.WriteAllText immer wieder den vorherigen Inhalt.

Die richtige Lösung wäre entweder den Dateiinhalt als String selber zusammenbauen und dann alles einmalig mittels File.WriteAllText() wegzuschreiben
oder
aber File.AppendAllText() verwenden
oder
aber File.CreateText() aufrufen und dann mit den StreamWriter-Methoden (z.B. Write oder WriteLine) die einzelnen Texte hineinschreiben.

Am besten du schaust dir mal die Hilfe in der MSDN zu den Klassen File, FileStream, StreamReader und StreamWriter etc. an. Dort stehen dann unter "Aufgabe" zahlreiche Beispiele zum Erstellen, Lesen und Schreiben von Textdateien.