Dela via


Gör så här: Spara filer med RichTextBox-kontrollen för Windows Forms

Kontrollen Windows Forms RichTextBox kan skriva den information som visas i något av flera format:

  • Oformaterad text

  • Oformaterad Unicode-text

  • Rich-Text format (RTF)

  • RTF med mellanslag i stället för OLE-objekt

  • Oformaterad text med en textrepresentation av OLE-objekt

Om du vill spara en fil anropar du metoden SaveFile. Du kan också använda metoden SaveFile för att spara data i en dataström. Mer information finns i SaveFile(Stream, RichTextBoxStreamType).

Spara innehållet i kontrollen i en fil

  1. Fastställ sökvägen till filen som ska sparas.

    Om du vill göra detta i ett verkligt program använder du vanligtvis komponenten SaveFileDialog. En översikt finns i Översikt över SaveFileDialog-komponenten.

  2. Anropa SaveFile-metoden för RichTextBox-kontrollen och ange filen som ska sparas och eventuellt en filtyp. Om du anropar metoden med ett filnamn som enda argument sparas filen som RTF. Om du vill ange en annan filtyp anropar du metoden med ett värde från RichTextBoxStreamType-uppräkningen som det andra argumentet.

    I exemplet nedan är sökvägen som angetts för platsen för RTF-filen mappen Mina dokument. Den här platsen används eftersom du kan anta att de flesta datorer som kör Windows-operativsystemet innehåller den här mappen. Om du väljer den här platsen kan användare med minimala systemåtkomstnivåer köra programmet på ett säkert sätt. Exemplet nedan förutsätter ett formulär med en RichTextBox kontroll som redan har lagts till.

    Public Sub SaveFile()
       ' You should replace the bold file name in the
       ' sample below with a file name of your own choosing.
       RichTextBox1.SaveFile(System.Environment.GetFolderPath _
       (System.Environment.SpecialFolder.Personal) _
       & "\Testdoc.rtf", _
          RichTextBoxStreamType.RichNoOleObjs)
    End Sub
    
    public void SaveFile()
    {
       // You should replace the bold file name in the
       // sample below with a file name of your own choosing.
       // Note the escape character used (@) when specifying the path.
       richTextBox1.SaveFile(System.Environment.GetFolderPath
       (System.Environment.SpecialFolder.Personal)
       + @"\Testdoc.rtf",
          RichTextBoxStreamType.RichNoOleObjs);
    }
    
    public:
       void SaveFile()
       {
          // You should replace the bold file name in the
          // sample below with a file name of your own choosing.
          richTextBox1->SaveFile(String::Concat
             (System::Environment::GetFolderPath
             (System::Environment::SpecialFolder::Personal),
             "\\Testdoc.rtf"), RichTextBoxStreamType::RichNoOleObjs);
       }
    

    Viktigt!

    Det här exemplet skapar en ny fil, om filen inte redan finns. Om ett program behöver skapa en fil behöver programmet Skapa åtkomst för mappen. Behörigheter anges med hjälp av åtkomstkontroll-listor. Om filen redan finns behöver programmet endast skrivåtkomst, en mindre behörighet. Där det är möjligt är det säkrare att skapa filen under distributionen och endast bevilja Läs-åtkomst till en enda fil i stället för Skapa åtkomst för en mapp. Dessutom är det säkrare att skriva data till användarmappar än till rotmappen eller mappen Programfiler.

Se även