ResourceWriter.Generate メソッド

定義

すべてのリソースをシステムの既定の形式で出力ストリームに保存します。

public:
 virtual void Generate();
public:
 void Generate();
public void Generate();
abstract member Generate : unit -> unit
override this.Generate : unit -> unit
member this.Generate : unit -> unit
Public Sub Generate ()

実装

例外

I/O エラーが発生しました。

オブジェクトのシリアル化中にエラーが発生しました。

この ResourceWriter は閉じられ、ハッシュ テーブルは使用できません。

次のコード例では、 Generate メソッドを使用して、 ResourceWriter クラス内のすべてのリソース オブジェクトを出力ストリームに書き込みます。

using System;
using System.Resources;
using System.IO;
public class WriteResources 
{
   public static void Main(string[] args) 
   {  
       // Create a file stream to encapsulate items.resources.
       FileStream fs = new FileStream("items.resources", 
          FileMode.OpenOrCreate,FileAccess.Write);

       // Open a resource writer to write from the stream.
       IResourceWriter writer = new ResourceWriter(fs);
    
       // Add resources to the resource writer.
       writer.AddResource("String 1", "First String");
       writer.AddResource("String 2", "Second String");
       writer.AddResource("String 3", "Third String");

       // Generate the resources, and close the writer.
       writer.Generate();
       writer.Close();
    }
}
Imports System.Resources
Imports System.IO

Public Class WriteResources

  Public Shared Sub Main(ByVal args() As String)
      ' Create a file stream to encapsulate items.resources.
      Dim fs As New FileStream("items.resources", _
         FileMode.OpenOrCreate, FileAccess.Write)

      ' Open a resource writer to write from the stream.
      Dim writer = New ResourceWriter(fs)

      ' Add resources to the resource writer.
      writer.AddResource("String 1", "First String")
      writer.AddResource("String 2", "Second String")
      writer.AddResource("String 3", "Third String")

      ' Generate the resources, and close the writer.
      writer.Generate()
      writer.Close()
   End Sub

End Class

注釈

Generate メソッドは、アプリケーション コードによって呼び出されない場合、Close メソッドによって暗黙的に呼び出されます。

Generate は、 AddResourceAddResourceData のすべての呼び出しが行われた後、1 回だけ呼び出すことができます。 リソースの書き込み中に例外が発生した場合、出力ストリームは閉じられ、無効な情報が書き込まれるのを防ぎます。

Generate は、通常は出力ストリームを閉じません。 追加のデータを .resources ファイルと組み合わせる場合や、後でストリームにアクセスする必要がある場合を除き、Closeを呼び出した後でGenerateを呼び出すか、単にCloseを呼び出す必要があります。

適用対象