次の方法で共有


方法: Windows フォーム RichTextBox コントロールを使用してファイルを保存する

Windows フォーム RichTextBox コントロールは、次のいずれかの形式で表示される情報を書き込むことができます。

  • プレーンテキスト

  • Unicode プレーン テキスト

  • Rich-Text 形式 (RTF)

  • OLE オブジェクトの代わりにスペースがあるRTF

  • OLE オブジェクトのテキスト表現を含むプレーン テキスト

ファイルを保存するには、SaveFile メソッドを呼び出します。 SaveFile メソッドを使用して、ストリームにデータを保存することもできます。 詳細については、SaveFile(Stream, RichTextBoxStreamType)を参照してください。

コントロールの内容をファイルに保存するには

  1. 保存するファイルのパスを決定します。

    実際のアプリケーションでこれを行うには、通常、SaveFileDialog コンポーネントを使用します。 概要については、「SaveFileDialog コンポーネントの概要 」を参照してください。

  2. RichTextBox コントロールの SaveFile メソッドを呼び出し、保存するファイルと必要に応じてファイルの種類を指定します。 ファイル名を唯一の引数としてメソッドを呼び出すと、ファイルは RTF として保存されます。 別のファイルの種類を指定するには、RichTextBoxStreamType 列挙体の値を 2 番目の引数として使用してメソッドを呼び出します。

    次の例では、リッチ テキスト ファイルの場所に設定されているパスは、[マイ ドキュメント] フォルダー です。 この場所は、Windows オペレーティング システムを実行しているほとんどのコンピューターにこのフォルダーが含まれると想定できるために使用されます。 この場所を選択すると、最小限のシステム アクセス レベルを持つユーザーがアプリケーションを安全に実行することもできます。 次の例では、RichTextBox コントロールが既に追加されているフォームを想定しています。

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

    大事な

    この例では、ファイルがまだ存在しない場合に、新しいファイルを作成します。 アプリケーションでファイルを作成する必要がある場合、そのアプリケーションにはフォルダーの作成アクセス権が必要です。 アクセス許可は、アクセス制御リストを使用して設定されます。 ファイルが既に存在する場合、アプリケーションには書き込みアクセス権のみが必要で、権限は少なくなります。 可能であれば、展開中にファイルを作成する方が安全であり、フォルダーの作成アクセス権ではなく、単一のファイルへの読み取りアクセス権のみを付与します。 また、ルート フォルダーや Program Files フォルダーよりも、ユーザー フォルダーにデータを書き込む方が安全です。

関連項目