Compartir a través de


ResourceWriter.AddResource Método

Definición

Agrega un recurso a la lista de recursos que se va a escribir.

Sobrecargas

AddResource(String, Byte[])

Agrega un recurso con nombre, especificado como una matriz de bytes, a la lista de recursos que se va a escribir.

AddResource(String, Stream)

Agrega un recurso con nombre, especificado como una secuencia, a la lista de recursos que se va a escribir.

AddResource(String, Object)

Agrega un recurso con nombre, especificado como una matriz de bytes, a la lista de recursos que se va a escribir.

AddResource(String, String)

Agrega un recurso de cadena a la lista de recursos que se va a escribir.

AddResource(String, Stream, Boolean)

Agrega un recurso con nombre especificado como una secuencia a la lista de recursos que se va a escribir y especifica si se debe cerrar la secuencia después de llamar al método Generate().

AddResource(String, Byte[])

Source:
ResourceWriter.cs
Source:
ResourceWriter.cs
Source:
ResourceWriter.cs

Agrega un recurso con nombre, especificado como una matriz de bytes, a la lista de recursos que se va a escribir.

public:
 virtual void AddResource(System::String ^ name, cli::array <System::Byte> ^ value);
public void AddResource (string name, byte[]? value);
public void AddResource (string name, byte[] value);
abstract member AddResource : string * byte[] -> unit
override this.AddResource : string * byte[] -> unit
Public Sub AddResource (name As String, value As Byte())

Parámetros

name
String

Nombre del recurso.

value
Byte[]

Valor del recurso como matriz de enteros de 8 bits sin signo.

Implementaciones

Excepciones

name (o un nombre que varía sólo en mayúsculas y minúsculas) ya se ha agregado a este ResourceWriter.

El parámetro name es null.

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

Ejemplos

En el ejemplo siguiente se usa el AddResource(String, Byte[]) método para agregar una imagen de gráficos que se ha leído como una matriz de bytes a un ResourceWriter objeto .

using System;
using System.IO;
using System.Resources;

public class Example
{
   public static void Main()
   {
      // Get the image as an array of bytes.
      FileStream byteStream = new FileStream("AppIcon.jpg", FileMode.Open);
      Byte[] bytes = new Byte[(int) byteStream.Length];
      byteStream.Read(bytes, 0, (int) byteStream.Length);
      
      // Create the resource file.
      using (ResourceWriter rw = new ResourceWriter(@".\UIImages.resources")) {
         rw.AddResource("AppIcon", byteStream);
         // Add any other resources.
      }
   }
}
Imports System.IO
Imports System.Resources

Module Example
   Public Sub Main()                      
      ' Get the image as an array of bytes.
      Dim byteStream As New FileStream("AppIcon.jpg", Filemode.Open)
      Dim bytes(CInt(byteStream.Length - 1)) As Byte
      byteStream.Read(bytes, 0, CInt(byteStream.Length))
      
      ' Create the resource file.
      Using rw As New ResourceWriter(".\UIImages.resources")
         rw.AddResource("AppIcon", byteStream)
         ' Add any other resources.
      End Using
   End Sub
End Module

Comentarios

El recurso no se escribe hasta Generate que se llama a .

Puede recuperar los recursos escritos por el AddResource(String, Byte[]) método llamando al ResourceManager.GetStream método .

Consulte también

Se aplica a

AddResource(String, Stream)

Source:
ResourceWriter.core.cs
Source:
ResourceWriter.core.cs
Source:
ResourceWriter.core.cs

Agrega un recurso con nombre, especificado como una secuencia, a la lista de recursos que se va a escribir.

public:
 void AddResource(System::String ^ name, System::IO::Stream ^ value);
public void AddResource (string name, System.IO.Stream? value);
public void AddResource (string name, System.IO.Stream value);
member this.AddResource : string * System.IO.Stream -> unit
Public Sub AddResource (name As String, value As Stream)

Parámetros

name
String

Nombre del recurso que se va a agregar.

value
Stream

Valor del recurso que se va a agregar. El recurso debe admitir la propiedad Length.

Excepciones

name (o un nombre que varía sólo en mayúsculas y minúsculas) ya se ha agregado a este ResourceWriter.

O bien

La secuencia no admite la propiedad Length.

name o value es null.

La clase ResourceWriter se ha cerrado.

Ejemplos

En el ejemplo siguiente se usa el AddResource(String, Stream) método para agregar una imagen gráfica que se ha guardado en un MemoryStream objeto a un ResourceWriter objeto .

using System;
using System.Drawing;
using System.Drawing.Imaging;
using System.IO;
using System.Resources;

public class Example
{
   public static void Main()
   {
      // Bitmap as stream
      MemoryStream bitmapStream = new MemoryStream();
      Bitmap bmp = new Bitmap(@".\\AppImage.jpg");
      bmp.Save(bitmapStream, ImageFormat.Jpeg);
          
      using (ResourceWriter rw = new ResourceWriter(@".\UIImages.resources"))
      {
         rw.AddResource("Bitmap", bitmapStream);
         // Add other resources.
      }
   }
}
Imports System.Drawing
Imports System.IO
Imports System.Resources

Module Example
   Public Sub Main()
      ' Bitmap as stream
      Dim bitmapStream As New MemoryStream()
      Dim bmp As New Bitmap(".\\AppImage.jpg")
      bmp.Save(bitmapStream, Imaging.ImageFormat.Jpeg)
          
      Using rw As New ResourceWriter(".\UIImages.resources")
         rw.AddResource("Bitmap", bitmapStream)
         ' Add other resources.
      End Using
   End Sub
End Module

Comentarios

Puede especificar cualquier secuencia que admita la Stream.Length propiedad para value.

Puede recuperar los recursos escritos por el AddResource(String, Stream) método llamando al ResourceManager.GetStream método .

Consulte también

Se aplica a

AddResource(String, Object)

Source:
ResourceWriter.cs
Source:
ResourceWriter.cs
Source:
ResourceWriter.cs

Agrega un recurso con nombre, especificado como una matriz de bytes, a la lista de recursos que se va a escribir.

public:
 virtual void AddResource(System::String ^ name, System::Object ^ value);
public void AddResource (string name, object? value);
public void AddResource (string name, object value);
abstract member AddResource : string * obj -> unit
override this.AddResource : string * obj -> unit
Public Sub AddResource (name As String, value As Object)

Parámetros

name
String

Nombre del recurso.

value
Object

Valor del recurso.

Implementaciones

Excepciones

name (o un nombre que varía sólo en mayúsculas y minúsculas) ya se ha agregado a este ResourceWriter.

El parámetro name es null.

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

Ejemplos

En el ejemplo siguiente se usa el AddResource(String, Object) método para agregar datos de objeto a un archivo de recursos binarios.

using System;
using System.Resources;

public class Example
{
   public static void Main()
   {
      DonorColumns columns = new DonorColumns("Emplyee #", "Name", 
                                              "Total Amount", "Last Donation Date",
                                              "Last Donation Amount");
      ResourceWriter resFile = new ResourceWriter(@".\UIResources.resources");
      resFile.AddResource("Title", "Corporate Gold Star Donors");
      resFile.AddResource("NColumns", 5);
      resFile.AddResource("AppDate", new DateTime(2011, 5, 28));
      resFile.AddResource("AppVersion", new Version(1, 0, 217));
      resFile.AddResource("HRVersion", true);
      resFile.Generate();
      resFile.Close();               
   }
}

// Class to hold potentially localized column names.
[Serializable] public class DonorColumns
{
   readonly string ID;
   readonly string Name;
   readonly string Total;
   readonly string Last;
   readonly string Amt;

   public DonorColumns(string id, string name, string total, 
                  string last, string amt)
   {                  
      this.ID = id;
      this.Name = name;
      this.Total = total;
      this.Last = last;
      this.Amt = amt;                        
   }   
}

DonorColumns es una clase personalizada cuyos campos contienen los nombres de las columnas que se mostrarán en la interfaz de usuario. Tenga en cuenta que la clase está marcada con el SerializableAttribute atributo . Normalmente, la clase se definiría en un ensamblado independiente y se proporcionaría una referencia al compilador en tiempo de compilación.

Comentarios

value debe ser serializable.

El recurso no se escribe hasta que se llama al Generate método .

Puede recuperar los recursos escritos por el AddResource(String, Object) método llamando al ResourceManager.GetObject método .

Consulte también

Se aplica a

AddResource(String, String)

Source:
ResourceWriter.cs
Source:
ResourceWriter.cs
Source:
ResourceWriter.cs

Agrega un recurso de cadena a la lista de recursos que se va a escribir.

public:
 virtual void AddResource(System::String ^ name, System::String ^ value);
public:
 void AddResource(System::String ^ name, System::String ^ value);
public void AddResource (string name, string? value);
public void AddResource (string name, string value);
abstract member AddResource : string * string -> unit
override this.AddResource : string * string -> unit
member this.AddResource : string * string -> unit
Public Sub AddResource (name As String, value As String)

Parámetros

name
String

Nombre del recurso.

value
String

Valor del recurso.

Implementaciones

Excepciones

name (o un nombre que varía sólo en mayúsculas y minúsculas) ya se ha agregado a este ResourceWriter.

El parámetro name es null.

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

Ejemplos

En el ejemplo siguiente se usa el AddResource método para agregar recursos de cadena a un ResourceWriter objeto .

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" );
   
   // Write the resources to the stream, and close it.
   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");

        // Write the resources to the stream, and close it.
        writer.Close();
    }
}
Imports System.Resources
Imports System.IO

Public Class WriteResources
   
    Public Shared Sub Main(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")
      
        ' Write the resources to the stream, and close it.
        writer.Close()
    End Sub

End Class

Comentarios

El recurso no se escribe hasta Generate que se llama a .

Puede recuperar los recursos escritos por el AddResource(String, String) método llamando al ResourceManager.GetString método .

Consulte también

Se aplica a

AddResource(String, Stream, Boolean)

Source:
ResourceWriter.cs
Source:
ResourceWriter.cs
Source:
ResourceWriter.cs

Agrega un recurso con nombre especificado como una secuencia a la lista de recursos que se va a escribir y especifica si se debe cerrar la secuencia después de llamar al método Generate().

public:
 void AddResource(System::String ^ name, System::IO::Stream ^ value, bool closeAfterWrite);
public void AddResource (string name, System.IO.Stream? value, bool closeAfterWrite = false);
public void AddResource (string name, System.IO.Stream value, bool closeAfterWrite);
member this.AddResource : string * System.IO.Stream * bool -> unit
Public Sub AddResource (name As String, value As Stream, Optional closeAfterWrite As Boolean = false)
Public Sub AddResource (name As String, value As Stream, closeAfterWrite As Boolean)

Parámetros

name
String

Nombre del recurso que se va a agregar.

value
Stream

Valor del recurso que se va a agregar. El recurso debe admitir la propiedad Length.

closeAfterWrite
Boolean

true para cerrar la secuencia después de llamar al método Generate(); false en otro caso.

Excepciones

name (o un nombre que varía sólo en mayúsculas y minúsculas) ya se ha agregado a este ResourceWriter.

O bien

La secuencia no admite la propiedad Length.

name o value es null.

La clase ResourceWriter se ha cerrado.

Ejemplos

En el ejemplo siguiente se usa el AddResource(String, Stream, Boolean) método para agregar una imagen gráfica que se ha guardado en un MemoryStream objeto a un ResourceWriter objeto .

using System;
using System.Drawing;
using System.Drawing.Imaging;
using System.IO;
using System.Resources;

public class Example
{
   public static void Main()
   {
      // Bitmap as stream
      MemoryStream bitmapStream = new MemoryStream();
      Bitmap bmp = new Bitmap(@".\\AppImage.jpg");
      bmp.Save(bitmapStream, ImageFormat.Jpeg);
          
      ResourceWriter rw = new ResourceWriter(@".\UIImages.resources");
      rw.AddResource("Bitmap", bitmapStream, true);
      // Add other resources.
      rw.Generate();
   }
}
Imports System.Drawing
Imports System.IO
Imports System.Resources

Module Example
   Public Sub Main()
      ' Bitmap as stream
      Dim bitmapStream As New MemoryStream()
      Dim bmp As New Bitmap(".\\AppImage.jpg")
      bmp.Save(bitmapStream, Imaging.ImageFormat.Jpeg)
          
      Dim rw As New ResourceWriter(".\UIImages.resources")
      rw.AddResource("Bitmap", bitmapStream, True)
      ' Add other resources.
      rw.Generate()
   End Sub
End Module

Comentarios

Puede especificar cualquier secuencia que admita la Stream.Length propiedad para value.

Puede recuperar los recursos escritos por el AddResource(String, Stream, Boolean) método llamando al ResourceManager.GetStream método .

Consulte también

Se aplica a