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

适用于