Auf Englisch lesen

Freigeben über


RichTextBox.SaveFile Methode

Definition

Speichert den Inhalt der RichTextBox in einer Datei.

Überlädt

SaveFile(Stream, RichTextBoxStreamType)

Speichert den Inhalt eines RichTextBox-Steuerelements in einem geöffneten Datenstream.

SaveFile(String, RichTextBoxStreamType)

Speichert den Inhalt der RichTextBox in einem bestimmten Dateiformat.

SaveFile(String)

Speichert den Inhalt der RichTextBox in einer RTF-Datei (Rich Text Format).

SaveFile(Stream, RichTextBoxStreamType)

Speichert den Inhalt eines RichTextBox-Steuerelements in einem geöffneten Datenstream.

C#
public void SaveFile (System.IO.Stream data, System.Windows.Forms.RichTextBoxStreamType fileType);

Parameter

data
Stream

Der Datenstream, der die Datei enthält, in der gespeichert werden soll.

fileType
RichTextBoxStreamType

Einer der RichTextBoxStreamType-Werte.

Ausnahmen

Im fileType-Parameter wurde ein ungültiger Dateityp angegeben.

Beim Speichern des Inhalts des Steuerelements in einer Datei ist ein Fehler aufgetreten.

Beispiele

Im folgenden Codebeispiel wird die Verwendung der SaveFile Methoden und LoadFile mit Streams veranschaulicht. Außerdem wird die Verwendung der FileDialog.FileNameMember , FileDialog.DefaultExt, SaveFileDialog.CreatePromptund SaveFileDialog.OverwritePrompt veranschaulicht.

Dies ist ein vollständiges Beispiel, das ausgeführt werden kann, wenn Sie es in Ihr Projekt kopieren.

C#
using System;
using System.Drawing;
using System.IO;
using System.Windows.Forms;

public partial class Form1: Form
{
    internal RichTextBox RichTextBox1;
    internal Button Button1;
    internal RichTextBox RichTextBox2;
    internal Button Button2;
    internal SaveFileDialog SaveFileDialog1;

    public Form1() : base()
    {   
        this.RichTextBox1 = new RichTextBox();
        this.Button1 = new Button();
        this.RichTextBox2 = new RichTextBox();
        this.Button2 = new Button();
        this.SaveFileDialog1 = new SaveFileDialog();
        this.SuspendLayout();
        this.RichTextBox1.Location = new Point(24, 64);
        this.RichTextBox1.Name = "RichTextBox1";
        this.RichTextBox1.TabIndex = 0;
        this.RichTextBox1.Text = "Type something here.";
        this.Button1.Location = new Point(96, 16);
        this.Button1.Name = "Button1";
        this.Button1.Size = new Size(96, 24);
        this.Button1.TabIndex = 1;
        this.Button1.Text = "Save To Stream";
        this.Button1.Click += new EventHandler(Button1_Click);
        this.RichTextBox2.Location = new Point(152, 64);
        this.RichTextBox2.Name = "RichTextBox2";
        this.RichTextBox2.TabIndex = 3;
        this.RichTextBox2.Text = 
            "It will be added to the stream and appear here.";
        this.Button2.Location = new Point(104, 200);
        this.Button2.Name = "Button2";
        this.Button2.Size = new Size(88, 32);
        this.Button2.TabIndex = 4;
        this.Button2.Text = "Save Stream To File";
        this.Button2.Click += new EventHandler(Button2_Click);
        this.ClientSize = new Size(292, 266);
        this.Controls.Add(this.Button2);
        this.Controls.Add(this.RichTextBox2);
        this.Controls.Add(this.Button1);
        this.Controls.Add(this.RichTextBox1);
        this.Name = "Form1";
        this.Text = "Form1";
        this.ResumeLayout(false);
    }

    public static void Main()
    {
        Application.Run(new Form1());
    }

    // Declare a new memory stream.
    MemoryStream userInput = new MemoryStream();

    // Save the content of RichTextBox1 to the memory stream, 
    // appending a LineFeed character.  
    private void Button1_Click(Object sender, EventArgs e)
    {
        RichTextBox1.SaveFile(userInput, RichTextBoxStreamType.PlainText);
        userInput.WriteByte(13);

        // Display the entire contents of the stream,
        // by setting its position to 0, to RichTextBox2.
        userInput.Position = 0;
        RichTextBox2.LoadFile(userInput, RichTextBoxStreamType.PlainText);
    }

    // Shows the use of a SaveFileDialog to save a MemoryStream to a file.
    private void Button2_Click(Object sender, EventArgs e)
    {
        // Set the properties on SaveFileDialog1 so the user is 
        // prompted to create the file if it doesn't exist 
        // or overwrite the file if it does exist.
        SaveFileDialog1.CreatePrompt = true;
        SaveFileDialog1.OverwritePrompt = true;

        // Set the file name to myText.txt, set the type filter
        // to text files, and set the initial directory to the 
        // MyDocuments folder.
        SaveFileDialog1.FileName = "myText";
        // DefaultExt is only used when "All files" is selected from 
        // the filter box and no extension is specified by the user.
        SaveFileDialog1.DefaultExt = "txt";
        SaveFileDialog1.Filter = 
            "Text files (*.txt)|*.txt|All files (*.*)|*.*";
        SaveFileDialog1.InitialDirectory = 
            Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);

        // Call ShowDialog and check for a return value of DialogResult.OK,
        // which indicates that the file was saved. 
        DialogResult result = SaveFileDialog1.ShowDialog();
        Stream fileStream;

        if (result == DialogResult.OK)
        {
            // Open the file, copy the contents of memoryStream to fileStream,
            // and close fileStream. Set the memoryStream.Position value to 0 
            // to copy the entire stream. 
            fileStream = SaveFileDialog1.OpenFile();
            userInput.Position = 0;
            userInput.WriteTo(fileStream);
            fileStream.Close();
        }
    }
}

Hinweise

Mit dieser Version der SaveFile Methode können Sie den gesamten Inhalt des Steuerelements in dem bereits geöffneten Datenstrom speichern. Der Datenstrom kann die Informationen dann in einer Datei speichern. Sie können die LoadFile -Methode verwenden, um den Inhalt einer Datei in das RichTextBoxzu laden.

Mit dieser Version der SaveFile Methode können Sie auch ein Datenformat der Informationen angeben, die an das Stream Objekt gesendet werden.

Weitere Informationen

Gilt für:

.NET Framework 4.8.1 und andere Versionen
Produkt Versionen
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

SaveFile(String, RichTextBoxStreamType)

Speichert den Inhalt der RichTextBox in einem bestimmten Dateiformat.

C#
public void SaveFile (string path, System.Windows.Forms.RichTextBoxStreamType fileType);

Parameter

path
String

Der Name und Speicherort der zu speichernden Datei.

fileType
RichTextBoxStreamType

Einer der RichTextBoxStreamType-Werte.

Ausnahmen

Im fileType-Parameter wurde ein ungültiger Dateityp angegeben.

Beim Speichern des Inhalts des Steuerelements in einer Datei ist ein Fehler aufgetreten.

Beispiele

Im folgenden Codebeispiel wird der Inhalt von RichTextBox in einer ASCII-Textdatei gespeichert. Im Beispiel wird die SaveFileDialog -Klasse verwendet, um ein Dialogfeld anzuzeigen, um den Pfad und den Dateinamen vom Benutzer anzufordern. Der Code speichert dann den Inhalt des Steuerelements in dieser Datei. Im Beispiel wird diese Version der SaveFile -Methode verwendet, um anzugeben, dass die Datei als ASCII-Textdatei anstelle des Standardmäßigen Rich-Text-Formats gespeichert wird. In diesem Beispiel muss der Code in einer Form Klasse platziert werden, die über ein RichTextBox Steuerelement namens verfügt richTextBox1.

C#
public void SaveMyFile()
{
   // Create a SaveFileDialog to request a path and file name to save to.
   SaveFileDialog saveFile1 = new SaveFileDialog();

   // Initialize the SaveFileDialog to specify the RTF extension for the file.
   saveFile1.DefaultExt = "*.rtf";
   saveFile1.Filter = "RTF Files|*.rtf";

   // Determine if the user selected a file name from the saveFileDialog.
   if(saveFile1.ShowDialog() == System.Windows.Forms.DialogResult.OK &&
      saveFile1.FileName.Length > 0) 
   {
      // Save the contents of the RichTextBox into the file.
      richTextBox1.SaveFile(saveFile1.FileName, RichTextBoxStreamType.PlainText);
   }
}

Hinweise

Mit SaveFile der -Methode können Sie den gesamten Inhalt des Steuerelements in einer RTF-Datei speichern, die von anderen Programmen wie Microsoft Word und Windows WordPad verwendet werden kann. Wenn der Dateiname, der an den path Parameter übergeben wird, bereits im angegebenen Verzeichnis vorhanden ist, wird die Datei ohne Vorankündigung überschrieben. Sie können die LoadFile -Methode verwenden, um den Inhalt einer Datei in das RichTextBoxzu laden.

Mit dieser Version der SaveFile Methode können Sie einen Dateityp angeben, in dem der Inhalt des Steuerelements gespeichert werden soll. Sie können dieses Feature verwenden, um sicherzustellen, dass die Datei basierend auf dem Inhalt des Steuerelements im richtigen Format gespeichert wird. Wenn ihr Dokument z. B. keine Unterschiede im Schriftstil oder der Farbgebung aufweist, können Sie die Datei als ASCII-Textdatei speichern, indem Sie den fileType Parameter auf RichTextBoxStreamType.PlainTextfestlegen.

Weitere Informationen

Gilt für:

.NET Framework 4.8.1 und andere Versionen
Produkt Versionen
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

SaveFile(String)

Speichert den Inhalt der RichTextBox in einer RTF-Datei (Rich Text Format).

C#
public void SaveFile (string path);

Parameter

path
String

Der Name und Speicherort der zu speichernden Datei.

Ausnahmen

Beim Speichern des Inhalts des Steuerelements in einer Datei ist ein Fehler aufgetreten.

Beispiele

Im folgenden Codebeispiel wird der Inhalt eines RichTextBox Steuerelements in einer RTF-Datei gespeichert. Im Beispiel wird die SaveFileDialog -Klasse verwendet, um ein Dialogfeld anzuzeigen, um vom Benutzer den Pfad und den Dateinamen der zu speichernden Datei anzufordern. Der Code speichert die Datei dann, wenn der Inhalt im Rich-Text-Format vorliegt. Wenn die Datei bereits vorhanden ist, wird sie automatisch überschrieben. In diesem Beispiel muss der Code in einer Form Klasse platziert werden, die über ein RichTextBox Steuerelement namens verfügt richTextBox1.

C#
public void SaveMyFile()
{
   // Create a SaveFileDialog to request a path and file name to save to.
   SaveFileDialog saveFile1 = new SaveFileDialog();

   // Initialize the SaveFileDialog to specify the RTF extention for the file.
   saveFile1.DefaultExt = "*.rtf";
   saveFile1.Filter = "RTF Files|*.rtf";

   // Determine whether the user selected a file name from the saveFileDialog.
   if(saveFile1.ShowDialog() == System.Windows.Forms.DialogResult.OK &&
      saveFile1.FileName.Length > 0) 
   {
      // Save the contents of the RichTextBox into the file.
      richTextBox1.SaveFile(saveFile1.FileName);
   }
}

Hinweise

Mit SaveFile der -Methode können Sie den gesamten Inhalt des Steuerelements in einer RTF-Datei speichern, die von anderen Programmen wie Microsoft Word und Windows WordPad verwendet werden kann. Wenn der Dateiname, der an den path Parameter übergeben wird, bereits im angegebenen Verzeichnis vorhanden ist, wird die Datei ohne Vorankündigung überschrieben. Sie können die LoadFile -Methode verwenden, um den Inhalt einer Datei in das RichTextBoxzu laden.

Hinweis

Um den Inhalt des Steuerelements in einem anderen Dateiformat wie ASCII-Text zu speichern, verwenden Sie die anderen Versionen dieser Methode, die einen Wert aus der RichTextBoxStreamType Enumeration als Parameter akzeptieren.

Weitere Informationen

Gilt für:

.NET Framework 4.8.1 und andere Versionen
Produkt Versionen
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9