ResourceWriter.AddResource Methode

Definition

Fügt der Liste der zu schreibenden Ressourcen eine Ressource hinzu.

Überlädt

AddResource(String, Byte[])

Fügt der Liste der zu schreibenden Ressourcen eine benannte Ressource hinzu, die als Bytearray angegeben ist.

AddResource(String, Stream)

Fügt der Liste zu schreibender Ressourcen eine als Datenstrom angegebene benannte Ressource hinzu.

AddResource(String, Object)

Fügt der Liste der zu schreibenden Ressourcen eine benannte Ressource hinzu, die als Objekt angegeben ist.

AddResource(String, String)

Fügt der Liste der zu schreibenden Ressourcen eine Zeichenfolgenressource hinzu.

AddResource(String, Stream, Boolean)

Fügt der Liste zu schreibender Ressourcen eine als Datenstrom angegebene benannte Ressource hinzu und gibt an, ob der Datenstrom geschlossen werden soll, nachdem die Generate()-Methode aufgerufen wurde.

AddResource(String, Byte[])

Fügt der Liste der zu schreibenden Ressourcen eine benannte Ressource hinzu, die als Bytearray angegeben ist.

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

Parameter

name
String

Der Name der Ressource.

value
Byte[]

Der Wert der Ressource als Array von vorzeichenlosen 8-Bit-Ganzzahlen.

Implementiert

Ausnahmen

name (oder ein Name, der sich lediglich in Groß- und Kleinschreibung davon unterscheidet) wurde ResourceWriter bereits hinzugefügt.

Der name-Parameter ist null.

Dieser ResourceWriter wurde geschlossen, und die zugehörige Hashtabelle ist nicht verfügbar.

Beispiele

Im folgenden Beispiel wird die -Methode verwendet, um einem -Objekt ein Grafikbild hinzuzufügen, das als AddResource(String, Byte[]) Bytearray gelesen ResourceWriter wurde.

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

Hinweise

Die Ressource wird erst geschrieben, wenn Generate aufgerufen wird.

Sie können die von der -Methode geschriebenen Ressourcen AddResource(String, Byte[]) abrufen, indem Sie die -Methode ResourceManager.GetStream aufrufen.

Siehe auch

Gilt für

AddResource(String, Stream)

Fügt der Liste zu schreibender Ressourcen eine als Datenstrom angegebene benannte Ressource hinzu.

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)

Parameter

name
String

Der Name der hinzuzufügenden Ressource.

value
Stream

Der Wert der hinzuzufügenden Ressource. Die Ressource muss die Length-Eigenschaft unterstützen.

Ausnahmen

name (oder ein Name, der sich lediglich in Groß- und Kleinschreibung davon unterscheidet) wurde ResourceWriter bereits hinzugefügt.

- oder -

Der Stream unterstützt nicht die Length-Eigenschaft.

name oder value ist null.

Das ResourceWriter wurde geschlossen.

Beispiele

Im folgenden Beispiel wird die -Methode verwendet, um einem -Objekt ein Grafikbild hinzuzufügen, das AddResource(String, Stream) in MemoryStream einem -Objekt gespeichert ResourceWriter wurde.

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

Hinweise

Sie können einen beliebigen Stream angeben, der die Stream.Length -Eigenschaft für value unterstützt.

Sie können die von der -Methode geschriebenen Ressourcen AddResource(String, Stream) abrufen, indem Sie die -Methode ResourceManager.GetStream aufrufen.

Siehe auch

Gilt für

AddResource(String, Object)

Fügt der Liste der zu schreibenden Ressourcen eine benannte Ressource hinzu, die als Objekt angegeben ist.

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)

Parameter

name
String

Der Name der Ressource.

value
Object

Der Wert der Ressource.

Implementiert

Ausnahmen

name (oder ein Name, der sich lediglich in Groß- und Kleinschreibung davon unterscheidet) wurde ResourceWriter bereits hinzugefügt.

Der name-Parameter ist null.

Dieser ResourceWriter wurde geschlossen, und die zugehörige Hashtabelle ist nicht verfügbar.

Beispiele

Im folgenden Beispiel wird die AddResource(String, Object) -Methode verwendet, um einer binären Ressourcendatei Objektdaten hinzuzufügen.

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 ist eine benutzerdefinierte Klasse, deren Felder die Namen der Spalten enthalten, die auf der Benutzeroberfläche angezeigt werden sollen. Beachten Sie, dass die -Klasse mit dem -Attribut SerializableAttribute markiert ist. Normalerweise wird die -Klasse in einer separaten Assembly definiert, und ein Verweis darauf wird dem Compiler zur Kompilierzeit bereitgestellt.

Hinweise

value muss serialisierbar sein.

Die Ressource wird erst geschrieben, wenn Generate die -Methode aufgerufen wird.

Sie können die von der -Methode geschriebenen Ressourcen AddResource(String, Object) abrufen, indem Sie die -Methode ResourceManager.GetObject aufrufen.

Siehe auch

Gilt für

AddResource(String, String)

Fügt der Liste der zu schreibenden Ressourcen eine Zeichenfolgenressource hinzu.

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)

Parameter

name
String

Der Name der Ressource.

value
String

Der Wert der Ressource.

Implementiert

Ausnahmen

name (oder ein Name, der sich lediglich in Groß- und Kleinschreibung davon unterscheidet) wurde ResourceWriter bereits hinzugefügt.

Der name-Parameter ist null.

Dieser ResourceWriter wurde geschlossen, und die zugehörige Hashtabelle ist nicht verfügbar.

Beispiele

Im folgenden Beispiel wird die AddResource -Methode verwendet, um einem -Objekt Zeichenfolgenressourcen ResourceWriter hinzuzufügen.

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

Hinweise

Die Ressource wird erst geschrieben, wenn Generate aufgerufen wird.

Sie können die von der -Methode geschriebenen Ressourcen AddResource(String, String) abrufen, indem Sie die -Methode ResourceManager.GetString aufrufen.

Siehe auch

Gilt für

AddResource(String, Stream, Boolean)

Fügt der Liste zu schreibender Ressourcen eine als Datenstrom angegebene benannte Ressource hinzu und gibt an, ob der Datenstrom geschlossen werden soll, nachdem die Generate()-Methode aufgerufen wurde.

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)

Parameter

name
String

Der Name der hinzuzufügenden Ressource.

value
Stream

Der Wert der hinzuzufügenden Ressource. Die Ressource muss die Length-Eigenschaft unterstützen.

closeAfterWrite
Boolean

true, um den Datenstrom nach dem Aufruf der Generate()-Methode zu schließen, andernfalls false.

Ausnahmen

name (oder ein Name, der sich lediglich in Groß- und Kleinschreibung davon unterscheidet) wurde ResourceWriter bereits hinzugefügt.

- oder -

Der Stream unterstützt nicht die Length-Eigenschaft.

name oder value ist null.

Das ResourceWriter wurde geschlossen.

Beispiele

Im folgenden Beispiel wird die -Methode verwendet, um einem -Objekt ein Grafikbild hinzuzufügen, das AddResource(String, Stream, Boolean) in MemoryStream einem -Objekt gespeichert ResourceWriter wurde.

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

Hinweise

Sie können einen beliebigen Stream angeben, der die Stream.Length -Eigenschaft für value unterstützt.

Sie können die von der -Methode geschriebenen Ressourcen AddResource(String, Stream, Boolean) abrufen, indem Sie die -Methode ResourceManager.GetStream aufrufen.

Siehe auch

Gilt für