다음을 통해 공유


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

개체를 serialize하는 동안 오류가 발생한 경우

ResourceWriter가 닫혀 있으므로 해당 해시 테이블을 사용할 수 없습니다.

예제

다음 코드 예제에서는 메서드를 사용하여 클래스의 Generate 모든 리소스 개체를 ResourceWriter 출력 스트림에 씁니다.

using namespace System;
using namespace System::Resources;
using namespace System::IO;
int main()
{
   
   // Create a file stream to encapsulate items.resources.
   FileStream^ fs = gcnew FileStream( "items.resources",FileMode::OpenOrCreate,FileAccess::Write );
   
   // Open a resource writer to write from the stream.
   IResourceWriter^ writer = gcnew 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();
}
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는 및 AddResourceData 에 대한 모든 호출이 이루어진 후에 한 번만 호출할 AddResource 수 있습니다. 리소스를 작성하는 동안 예외가 발생하면 잘못된 정보를 쓰지 못하도록 출력 스트림이 닫힙니다.

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

적용 대상