Compartir a través de


Cómo: Guardar archivos con el control RichTextBox de formularios Windows Forms

El control RichTextBox de formularios Windows Forms puede escribir la información que muestra en uno de los siguientes formatos:

  • Texto sin formato

  • Texto sin formato Unicode

  • Formato de texto enriquecido (RTF)

  • RTF con espacios en lugar de objetos OLE

  • Texto sin formato con una representación textual de objetos OLE

Para guardar un archivo, llame al método SaveFile. También puede utilizar el método SaveFile para guardar datos en una secuencia. Para obtener más información, vea SaveFile(Stream, RichTextBoxStreamType).

Para guardar el contenido del control en un archivo

  1. Determina la ruta de acceso del archivo que se va a guardar.

    Para hacer esto en una aplicación real, lo habitual es utilizar el componente SaveFileDialog. Para obtener información general, vea Información general sobre el componente SaveFileDialog (formularios Windows Forms).

  2. Llame al método SaveFile del control RichTextBox, y especifique el archivo que se guardará y, opcionalmente, un tipo de archivo. Si llama al método con un nombre de archivo como único argumento, el archivo se guardará como RTF. Para especificar otro tipo de archivo, llame al método con un valor de la enumeración RichTextBoxStreamType como segundo argumento.

    En el ejemplo siguiente, la ruta de acceso establecida para la ubicación del archivo de texto enriquecido es la carpeta Mis documentos. Se utiliza esta ubicación porque se puede asumir que la mayoría de los equipos que ejecuten el sistema operativo Windows tendrán esta carpeta. Al elegir esta ubicación, también se permite a los usuarios con niveles de acceso mínimos ejecutar la aplicación de un modo seguro. En el ejemplo siguiente suponemos que ya se ha agregado un control RichTextBox al formulario.

    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(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);
       }
    
    Nota de seguridadNota sobre la seguridad

    En este ejemplo se crea un nuevo archivo, si es que aún no existe. Si una aplicación necesita crear un archivo, precisará acceso de creación para la carpeta correspondiente. Los permisos se establecen usando listas de control de acceso. Sin embargo, si el archivo ya existe, la aplicación sólo precisará acceso de escritura, un privilegio menor. Por tanto, siempre que sea posible, resulta más seguro crear el archivo durante la implementación y conceder sólo acceso de lectura para un único archivo, en lugar de acceso de creación para una carpeta. También es más seguro escribir datos en carpetas de usuario en lugar de en la carpeta raíz o en la carpeta Archivos de programa.

Vea también

Referencia

RichTextBox.SaveFile

RichTextBox

Otros recursos

RichTextBox (Control, formularios Windows Forms)

Controles que se utilizan en formularios Windows Forms