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 오류가 발생했습니다.

개체를 serialization하는 동안 오류가 발생했습니다.

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 는 호출한 후 한 번만 호출할 AddResource 수 있습니다 AddResourceData . 리소스를 작성하는 동안 예외가 발생하면 잘못된 정보를 쓰지 못하도록 출력 스트림이 닫힙니다.

Generate 는 일반적인 경우 출력 스트림을 닫지 않습니다. 추가 데이터를 .resources 파일과 결합하거나 나중에 스트림에 액세스해야 하는 경우가 아니면 호출 Close후 호출하거나 단순히 호출 GenerateClose해야 합니다.

적용 대상