Condividi tramite


Procedura: Salvare file con il controllo RichTextBox di Windows Form

Il controllo RichTextBox di Windows Forms può scrivere le informazioni visualizzate in uno dei diversi formati.

  • Testo normale

  • Testo semplice Unicode

  • Formato Rich-Text (RTF)

  • RTF con spazi al posto di oggetti OLE

  • Testo normale con rappresentazione testuale di oggetti OLE

Per salvare un file, chiamare il metodo SaveFile. È possibile usare anche il metodo SaveFile per salvare i dati in un flusso. Per altre informazioni, vedere SaveFile(Stream, RichTextBoxStreamType).

Per salvare il contenuto del controllo in un file

  1. Determinare il percorso del file da salvare.

    Per eseguire questa operazione in un'applicazione reale, in genere si usa il componente SaveFileDialog. Per una panoramica, vedere Cenni preliminari sul componente SaveFileDialog.

  2. Chiamare il metodo SaveFile del controllo RichTextBox, specificando il file da salvare e facoltativamente un tipo di file. Se si chiama il metodo con un nome di file come unico argomento, il file verrà salvato come RTF. Per specificare un altro tipo di file, chiamare il metodo utilizzando un valore dell'enumerazione RichTextBoxStreamType come secondo argomento.

    Nell'esempio seguente, il percorso impostato per la posizione del file di testo formattato è la cartella Documenti. Questo percorso viene usato perché è possibile presupporre che la maggior parte dei computer che eseguono il sistema operativo Windows includerà questa cartella. La scelta di questa posizione consente anche agli utenti con livelli minimi di accesso al sistema di eseguire l'applicazione in modo sicuro. Nell'esempio seguente si presuppone che un modulo con un elemento di controllo RichTextBox già aggiunto.

    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);
       }
    

    Importante

    In questo esempio viene creato un nuovo file, se il file non esiste già. Se un'applicazione deve creare un file, l'applicazione deve creare l'accesso per la cartella. Le autorizzazioni vengono impostate usando gli elenchi di controllo di accesso. Se il file esiste già, l'applicazione richiede solo l'accesso in scrittura, un privilegio minore. Laddove possibile, è più sicuro creare il file durante la distribuzione e concedere solo l'accesso in lettura a un singolo file, anziché concedere l'accesso di Creazione per una cartella. Inoltre, è più sicuro scrivere dati nelle cartelle utente rispetto alla cartella radice o alla cartella Programmi.

Vedere anche