[C#] SaveFileDialog Dateiendung vorgeben

Atreju93

Lieutenant
Registriert
Nov. 2010
Beiträge
595
Hallo zusammen

Ich steh total auf dem Schlauch und finde auch per Google irgendwie nicht das passende.
Also bitte nicht böse sein, falls die Lösung offensichtlich wäre.

Ich habe eine Textbox, in die ich Logdaten schreibe. Der User soll nun die Möglichkeit haben, der Inhalt der Textbox in eine .txt Datei zu speichern.

Dies habe ich so realisiert:

Code:
        private void buttonSaveErrLog_Click(object sender, EventArgs e)
        {
            SaveFileDialog dlgSave = new SaveFileDialog();

            string FileName = "";

            if (dlgSave.ShowDialog() == DialogResult.OK)
            {

                FileName = dlgSave.FileName;

            }

            StreamWriter sw = File.CreateText(FileName);

            sw.Write(tboxError.Text);

            sw.Flush();

            sw.Close();


        }

Dies funktioniert wunderbar, nur muss der user jedesmal die Dateiendung angeben.
ich möchte nun, dass es entweder im SaveFileDialog schon vorgibt, dass es standartmässig eine .txt Datei speichert (Wie es z.b. in Word eine .doc vorgibt).

oder was auch eine Möglichkeit wäre, falls es nicht anders geht, dass es einen festen Dateipfad mit Dateiendung und Dateinamen definiert und speichert. (wäre allerdings nicht wünschenswert)


Danke vielmals für eure Hilfe :)

PS:
Ich bin c# Anfänger.....
 
schon mal daran gedacht, den string ".txt" an FileName dranzuhängen, wenn die endung fehlt?

Edit: Unter mir ist natürlich die bessere Lösung. :-)
 
Zuletzt bearbeitet von einem Moderator:
Das ist ganz einfach:

dlgSave.DefaultExt = "txt";

Hier findest du die Erklärung und auch Beispiel-Code:

http://msdn.microsoft.com/query/dev...WORK,VERSION=V4.0");k(DevLang-CSHARP)&rd=true

Unter anderem auch, wie man Filter einstellen kann.

Für die Zukunft: Das einfachste ist immer erst, wenn du z.B. "dlgSave" und dann ein Punkt eingibst. In Visual Studio werden dir dann dank IntelliSense alle Eigenschaften und Methoden aufgelistet, die zur Verfügung stehen. Diese durchforstest du einfach und schaust, ob es eine Eigenschaft oder Methode gibt, die genau das macht, was du haben willst. Während du eine Eigenschaft oder Methode in der Liste auswählst, wird dir auch eine kurze Beschreibung dazu angezeigt. Falls diese nicht ausreichend ist, brauchst du einfach nur F1 drücken und landest dann bei MSDN, wo du immer eine genauere Erklärung und häufig auch Beispiel-Code findest.
 
Die Antwort hast du ja schon bekommen, aber hier <klick> mal noch ne gute seite für snippets. (es ist nicht google ;))
 
Oder beim nächsten mal stellst es gleich im Designer ein:



EDIT: Dann musst aber auch dein SaveFileDialog ober die Toolbox hinzufügen seh ich grade.
 
Zuletzt bearbeitet:
Danke vielmals für die Antworten und für die Tipps.

Nun klappt es Wunderbar :D

Danke!
 
Zurück
Oben