ResourceWriter.AddResource Metodo

Definizione

Aggiunge una risorsa all'elenco di risorse da scrivere.

Overload

AddResource(String, Byte[])

Aggiunge all'elenco di risorse da scrivere una risorsa denominata specificata come matrice di byte.

AddResource(String, Stream)

Aggiunge all'elenco di risorse da scrivere una risorsa denominata specificata come flusso.

AddResource(String, Object)

Aggiunge all'elenco di risorse da scrivere una risorsa denominata specificata come oggetto.

AddResource(String, String)

Aggiunge una risorsa di tipo stringa all'elenco di risorse da scrivere.

AddResource(String, Stream, Boolean)

Aggiunge all'elenco di risorse da scrivere una risorsa denominata specificata come flusso e specifica se il flusso deve essere chiuso dopo la chiamata al metodo Generate().

AddResource(String, Byte[])

Origine:
ResourceWriter.cs
Origine:
ResourceWriter.cs
Origine:
ResourceWriter.cs

Aggiunge all'elenco di risorse da scrivere una risorsa denominata specificata come matrice di byte.

C#
public void AddResource (string name, byte[]? value);
C#
public void AddResource (string name, byte[] value);

Parametri

name
String

Nome della risorsa.

value
Byte[]

Valore della risorsa come matrice di valori unsigned integer a 8 bit.

Implementazioni

Eccezioni

Il parametro name, oppure un nome che si differenzia solo per le maiuscole e le minuscole, è già stato aggiunto a questo oggetto ResourceWriter.

Il valore del parametro name è null.

Questo oggetto ResourceWriter è stato chiuso e la relativa tabella hash non è disponibile.

Esempio

Nell'esempio seguente viene usato il AddResource(String, Byte[]) metodo per aggiungere un'immagine grafica che è stata letta come matrice di byte a un ResourceWriter oggetto .

C#
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.
      }
   }
}

Commenti

La risorsa non viene scritta finché Generate non viene chiamata.

È possibile recuperare le risorse scritte dal AddResource(String, Byte[]) metodo chiamando il ResourceManager.GetStream metodo .

Vedi anche

Si applica a

.NET 9 e altre versioni
Prodotto Versioni
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

AddResource(String, Stream)

Origine:
ResourceWriter.core.cs
Origine:
ResourceWriter.core.cs
Origine:
ResourceWriter.core.cs

Aggiunge all'elenco di risorse da scrivere una risorsa denominata specificata come flusso.

C#
public void AddResource (string name, System.IO.Stream? value);
C#
public void AddResource (string name, System.IO.Stream value);

Parametri

name
String

Nome della risorsa da aggiungere.

value
Stream

Valore della risorsa da aggiungere. La risorsa deve supportare la proprietà di Length .

Eccezioni

Il parametro name, oppure un nome che si differenzia solo per le maiuscole e le minuscole, è già stato aggiunto a questo oggetto ResourceWriter.

-oppure-

Il flusso non supporta la proprietà Length.

name o value è null.

Questo oggetto ResourceWriter è stato chiuso.

Esempio

Nell'esempio seguente viene utilizzato il AddResource(String, Stream) metodo per aggiungere un'immagine grafica salvata in un MemoryStream oggetto a un ResourceWriter oggetto .

C#
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.
      }
   }
}

Commenti

È possibile specificare qualsiasi flusso che supporti la Stream.Length proprietà per value.

È possibile recuperare le risorse scritte dal AddResource(String, Stream) metodo chiamando il ResourceManager.GetStream metodo .

Vedi anche

Si applica a

.NET 9 e altre versioni
Prodotto Versioni
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

AddResource(String, Object)

Origine:
ResourceWriter.cs
Origine:
ResourceWriter.cs
Origine:
ResourceWriter.cs

Aggiunge all'elenco di risorse da scrivere una risorsa denominata specificata come oggetto.

C#
public void AddResource (string name, object? value);
C#
public void AddResource (string name, object value);

Parametri

name
String

Nome della risorsa.

value
Object

Valore della risorsa.

Implementazioni

Eccezioni

Il parametro name, oppure un nome che si differenzia solo per le maiuscole e le minuscole, è già stato aggiunto a questo oggetto ResourceWriter.

Il valore del parametro name è null.

Questo oggetto ResourceWriter è stato chiuso e la relativa tabella hash non è disponibile.

Esempio

Nell'esempio seguente viene utilizzato il AddResource(String, Object) metodo per aggiungere dati oggetto a un file di risorse binarie.

C#
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 è una classe personalizzata i cui campi contengono i nomi delle colonne da visualizzare nell'interfaccia utente. Si noti che la classe è contrassegnata con l'attributo SerializableAttribute . In genere, la classe verrebbe definita in un assembly separato e verrà fornito un riferimento al compilatore in fase di compilazione.

Commenti

value deve essere serializzabile.

La risorsa non viene scritta fino a quando non viene chiamato il Generate metodo .

È possibile recuperare le risorse scritte dal AddResource(String, Object) metodo chiamando il ResourceManager.GetObject metodo .

Vedi anche

Si applica a

.NET 9 e altre versioni
Prodotto Versioni
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

AddResource(String, String)

Origine:
ResourceWriter.cs
Origine:
ResourceWriter.cs
Origine:
ResourceWriter.cs

Aggiunge una risorsa di tipo stringa all'elenco di risorse da scrivere.

C#
public void AddResource (string name, string? value);
C#
public void AddResource (string name, string value);

Parametri

name
String

Nome della risorsa.

value
String

Valore della risorsa.

Implementazioni

Eccezioni

Il parametro name, oppure un nome che si differenzia solo per le maiuscole o le minuscole, è già stato aggiunto a questo ResourceWriter.

Il valore del parametro name è null.

Questo oggetto ResourceWriter è stato chiuso e la relativa tabella hash non è disponibile.

Esempio

Nell'esempio seguente viene utilizzato il AddResource metodo per aggiungere risorse stringa a un ResourceWriter oggetto .

C#
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();
    }
}

Commenti

La risorsa non viene scritta finché Generate non viene chiamata.

È possibile recuperare le risorse scritte dal AddResource(String, String) metodo chiamando il ResourceManager.GetString metodo .

Vedi anche

Si applica a

.NET 9 e altre versioni
Prodotto Versioni
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

AddResource(String, Stream, Boolean)

Origine:
ResourceWriter.cs
Origine:
ResourceWriter.cs
Origine:
ResourceWriter.cs

Aggiunge all'elenco di risorse da scrivere una risorsa denominata specificata come flusso e specifica se il flusso deve essere chiuso dopo la chiamata al metodo Generate().

C#
public void AddResource (string name, System.IO.Stream? value, bool closeAfterWrite = false);
C#
public void AddResource (string name, System.IO.Stream value, bool closeAfterWrite);

Parametri

name
String

Nome della risorsa da aggiungere.

value
Stream

Valore della risorsa da aggiungere. La risorsa deve supportare la proprietà di Length .

closeAfterWrite
Boolean

true per chiudere il flusso dopo la chiamata al metodo Generate(). In caso contrario, false.

Eccezioni

Il parametro name, oppure un nome che si differenzia solo per le maiuscole e le minuscole, è già stato aggiunto a questo oggetto ResourceWriter.

-oppure-

Il flusso non supporta la proprietà Length.

name o value è null.

Questo oggetto ResourceWriter è stato chiuso.

Esempio

Nell'esempio seguente viene utilizzato il AddResource(String, Stream, Boolean) metodo per aggiungere un'immagine grafica salvata in un MemoryStream oggetto a un ResourceWriter oggetto .

C#
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();
   }
}

Commenti

È possibile specificare qualsiasi flusso che supporti la Stream.Length proprietà per value.

È possibile recuperare le risorse scritte dal AddResource(String, Stream, Boolean) metodo chiamando il ResourceManager.GetStream metodo .

Vedi anche

Si applica a

.NET 9 e altre versioni
Prodotto Versioni
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1