ResourceWriter.Generate Método

Definição

Salva todos os recursos no fluxo de saída no formato padrão do sistema.

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 ()

Implementações

Exceções

Ocorreu um erro de E/S.

Ocorreu um erro durante a serialização do objeto.

Isso ResourceWriter foi fechado e sua tabela de hash não está disponível.

Exemplos

O exemplo de código a seguir usa o Generate método para gravar todos os objetos de recurso em uma ResourceWriter classe no fluxo de saída

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

Comentários

O Generate método será chamado implicitamente pelo Close método se ele não for chamado pelo código do aplicativo.

Generate só pode ser chamado uma vez, depois de todas as chamadas para AddResource e AddResourceData foram feitas. Se ocorrer uma exceção durante a gravação dos recursos, o fluxo de saída será fechado para impedir a gravação de informações inválidas.

Generate não fecha o fluxo de saída em casos normais. A menos que você esteja combinando dados extras com seu arquivo .resources ou precise de acesso ao fluxo posteriormente, você deve ligar Close após a chamada Generateou simplesmente chamar Close.

Aplica-se a