Compartir a través de


ResourceWriter.Generate Método

Definición

Guarda todos los recursos en el flujo de salida con el formato predeterminado del 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 ()

Implementaciones

Excepciones

Error de E/S.

Se ha producido un error durante la serialización del objeto.

Se ha cerrado este ResourceWriter y su tabla no está disponible.

Ejemplos

En el ejemplo de código siguiente se usa el Generate método para escribir todos los objetos de recursos de una ResourceWriter clase en el flujo de salida.

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

Comentarios

El Generate método llama implícitamente al Close método si no lo llama el código de la aplicación.

Generate solo se puede llamar una vez, después de todas las llamadas a AddResource y AddResourceData se han realizado. Si se produce una excepción al escribir los recursos, el flujo de salida se cerrará para evitar la escritura de información no válida.

Generate no cierra el flujo de salida en casos normales. A menos que combine datos adicionales con el archivo .resources o necesite acceso a la secuencia después, debe llamar Close a después de llamar a Generateo simplemente llamar a Close.

Se aplica a