語言

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 已撥出的呼叫後,只能呼叫一次。 若在寫入資源時發生異常,輸出串流會被關閉以防止寫入無效資訊。

Generate 在正常情況下不會關閉輸出串流。 除非你是將額外資料與 .resources 檔案合併,或事後需要存取串流,否則你應該一遍又一遍地呼叫 CloseGenerate,或直接呼叫 Close。

適用於