Teilen über


ResXResourceWriter Klasse

Definition

Schreibt Ressourcen in eine XML-Ressourcendatei (.resx) oder in einen Ausgabestream.

public ref class ResXResourceWriter : System::Resources::IResourceWriter
public ref class ResXResourceWriter : IDisposable, System::Resources::IResourceWriter
public class ResXResourceWriter : System.Resources.IResourceWriter
public class ResXResourceWriter : IDisposable, System.Resources.IResourceWriter
type ResXResourceWriter = class
    interface IResourceWriter
    interface IDisposable
Public Class ResXResourceWriter
Implements IResourceWriter
Public Class ResXResourceWriter
Implements IDisposable, IResourceWriter
Vererbung
ResXResourceWriter
Implementiert

Beispiele

Im folgenden Beispiel wird eine RESX-Datei namens CarResources.resx erstellt, die sechs Zeichenfolgen, ein Symbol und zwei anwendungsdefinierte Objekte (zwei Automobile Objekte) speichert. Beachten Sie, dass die Klasse Automobile, die im Beispiel definiert und instanziiert wird, mit dem SerializableAttribute-Attribut gekennzeichnet ist.

using System;
using System.Drawing;
using System.Resources;

[Serializable()] public class Automobile
{
   private string carMake;
   private string carModel;
   private int carYear;
   private int carDoors;
   private int carCylinders;

   public Automobile(string make, string model, int year) :
                     this(make, model, year, 0, 0)
   { }

   public Automobile(string make, string model, int year,
                     int doors, int cylinders)
   {
      this.carMake = make;
      this.carModel = model;
      this.carYear = year;
      this.carDoors = doors;
      this.carCylinders = cylinders;
   }

   public string Make {
      get { return this.carMake; }
   }

   public string Model {
      get {return this.carModel; }
   }

   public int Year {
      get { return this.carYear; }
   }

   public int Doors {
      get { return this.carDoors; }
   }

   public int Cylinders {
      get { return this.carCylinders; }
   }
}

public class Example
{
   public static void Main()
   {
      // Instantiate an Automobile object.
      Automobile car1 = new Automobile("Ford", "Model N", 1906, 0, 4);
      Automobile car2 = new Automobile("Ford", "Model T", 1909, 2, 4);
      // Define a resource file named CarResources.resx.
      using (ResXResourceWriter resx = new ResXResourceWriter(@".\CarResources.resx"))
      {
         resx.AddResource("Title", "Classic American Cars");
         resx.AddResource("HeaderString1", "Make");
         resx.AddResource("HeaderString2", "Model");
         resx.AddResource("HeaderString3", "Year");
         resx.AddResource("HeaderString4", "Doors");
         resx.AddResource("HeaderString5", "Cylinders");
         resx.AddResource("Information", SystemIcons.Information);
         resx.AddResource("EarlyAuto1", car1);
         resx.AddResource("EarlyAuto2", car2);
      }
   }
}
Imports System.Drawing
Imports System.Resources

<Serializable()> Public Class Automobile
   Private carMake As String
   Private carModel As String
   Private carYear As Integer
   Private carDoors AS Integer
   Private carCylinders As Integer
   
   Public Sub New(make As String, model As String, year As Integer) 
      Me.New(make, model, year, 0, 0)   
   End Sub
   
   Public Sub New(make As String, model As String, year As Integer, 
                  doors As Integer, cylinders As Integer)
      Me.carMake = make
      Me.carModel = model
      Me.carYear = year
      Me.carDoors = doors
      Me.carCylinders = cylinders
   End Sub

   Public ReadOnly Property Make As String
      Get
         Return Me.carMake
      End Get   
   End Property       
   
   Public ReadOnly Property Model As String
      Get
         Return Me.carModel
      End Get   
   End Property       
   
   Public ReadOnly Property Year As Integer
      Get
         Return Me.carYear
      End Get   
   End Property       
   
   Public ReadOnly Property Doors As Integer
      Get
         Return Me.carDoors
      End Get   
   End Property       
   
   Public ReadOnly Property Cylinders As Integer
      Get
         Return Me.carCylinders
      End Get   
   End Property       
End Class

Module Example
   Public Sub Main()
      ' Instantiate an Automobile object.
      Dim car1 As New Automobile("Ford", "Model N", 1906, 0, 4)
      Dim car2 As New Automobile("Ford", "Model T", 1909, 2, 4)
      ' Define a resource file named CarResources.resx.
      Using resx As New ResXResourceWriter(".\CarResources.resx")
         resx.AddResource("Title", "Classic American Cars")
         resx.AddResource("HeaderString1", "Make")
         resx.AddResource("HeaderString2", "Model")
         resx.AddResource("HeaderString3", "Year")
         resx.AddResource("HeaderString4", "Doors")
         resx.AddResource("HeaderString5", "Cylinders")
         resx.AddResource("Information", SystemIcons.Information) 
         resx.AddResource("EarlyAuto1", car1)
         resx.AddResource("EarlyAuto2", car2)  
      End Using
   End Sub
End Module

Hinweise

Der ResXResourceWriter schreibt Ressourcen im XML-Format. Verwenden Sie ResourceWriter, um eine binäre Ressourcendatei zu schreiben.

Ressourcen werden mithilfe der AddResource -Methode als Name-Wert-Paare angegeben. Bei Ressourcennamen wird die Groß-/Kleinschreibung beachtet, wenn sie für Nachschlagevorgänge verwendet werden. Aber um Erstellungstools einfacher zu unterstützen und Fehler zu beseitigen, ResXResourceWriter lässt eine RESX-Datei keine Namen zu, die nur je nach Groß-/Kleinschreibung variieren.

Um eine RESX-Datei zu erstellen, erstellen Sie eine ResXResourceWriter mit einem eindeutigen Dateinamen, rufen AddResource Sie mindestens einmal auf, rufen Sie Generate auf, um die Ressourcendatei auf den Datenträger zu schreiben, und rufen Sie dann auf Close , um die Datei zu schließen. Beim Aufrufen Close wird die Datei bei Bedarf implizit Generate angezeigt.

Die Ressourcen werden nicht unbedingt in derselben Reihenfolge geschrieben, in der sie hinzugefügt wurden.

Weitere Informationen zum Format einer RESX-Datei finden Sie unter Programmgesteuertes Arbeiten mit RESX-Dateien.

Hinweis

Diese Klasse enthält eine Linkanforderung und eine Vererbungsanforderung auf Klassenebene, die für alle Member gilt. Ein SecurityException wird ausgelöst, wenn entweder der unmittelbare Aufrufer oder die abgeleitete Klasse über keine voll vertrauenswürdige Berechtigung verfügt.

Konstruktoren

ResXResourceWriter(Stream)

Initialisiert eine neue Instanz der ResXResourceWriter-Klasse, die die Ressourcen in das angegebene Streamobjekt schreibt.

ResXResourceWriter(Stream, Func<Type,String>)

Initialisiert eine neue Instanz der ResXResourceWriter-Klasse, die die Ressourcen in ein angegebenes Streamobjekt schreibt und einen Konverterdelegaten festlegt. Dieser Delegat ermöglicht, dass mithilfe von qualifizierten Assemblynamen Ressourcenassemblys für .NET Framework-Versionen vor .NET Framework 4 geschrieben werden können.

ResXResourceWriter(String)

Initialisiert eine neue Instanz der ResXResourceWriter-Klasse, die die Ressourcen in die angegebene Datei schreibt.

ResXResourceWriter(String, Func<Type,String>)

Initialisiert eine neue Instanz der ResXResourceWriter-Klasse, die die Ressourcen in eine angegebene Datei schreibt, und legt einen Delegaten fest, der ermöglicht, dass mit qualifizierten Assemblynamen Ressourcenassemblys für .NET Framework vor .NET Framework 4 geschrieben werden können.

ResXResourceWriter(TextWriter)

Initialisiert eine neue Instanz der ResXResourceWriter-Klasse, die in das angegebene TextWriter-Objekt schreibt.

ResXResourceWriter(TextWriter, Func<Type,String>)

Initialisiert eine neue Instanz der ResXResourceWriter-Klasse, die die Ressourcen in ein angegebenes TextWriter-Objekt schreibt, und legt einen Delegaten fest, der ermöglicht, dass mit qualifizierten Assemblynamen Ressourcenassemblys für .NET Framework vor .NET Framework 4 geschrieben werden können.

Felder

BinSerializedObjectMimeType

Gibt den Standardinhaltstyp für ein binäres Objekt an. Dieses Feld ist schreibgeschützt.

ByteArraySerializedObjectMimeType

Gibt den Standardinhaltstyp für ein Bytearrayobjekt an. Dieses Feld ist schreibgeschützt.

DefaultSerializedObjectMimeType

Gibt den Standardinhaltstyp für ein Objekt an. Dieses Feld ist schreibgeschützt.

ResMimeType

Gibt den Inhaltstyp einer XML-Ressource an. Dieses Feld ist schreibgeschützt.

ResourceSchema

Gibt das Schema für das Schreiben der XML-Datei an. Dieses Feld ist schreibgeschützt.

SoapSerializedObjectMimeType

Gibt den Inhaltstyp für ein SOAP-Objekt an. Dieses Feld ist schreibgeschützt.

Version

Gibt die Version des Schemas an, dem die XML-Ausgabe entspricht. Dieses Feld ist schreibgeschützt.

Eigenschaften

BasePath

Ruft den Basispfad für den in einem ResXFileRef-Objekt angegebenen relativen Pfad ab oder legt diesen fest.

Methoden

AddAlias(String, AssemblyName)

Fügt den angegebenen Alias einer Liste mit Aliasnamen hinzu.

AddMetadata(String, Byte[])

Fügt der Liste der zu schreibenden Ressourcen eine Entwurfszeiteigenschaft hinzu, deren Wert als Bytearray angegeben ist.

AddMetadata(String, Object)

Fügt der Liste der zu schreibenden Ressourcen eine Entwurfszeiteigenschaft hinzu, deren Wert als ein Objekt angegeben ist.

AddMetadata(String, String)

Fügt der Liste der zu schreibenden Ressourcen eine Entwurfszeiteigenschaft hinzu, deren Wert als eine Zeichenfolge angegeben ist.

AddResource(ResXDataNode)

Fügt der Liste der zu schreibenden Ressourcen eine benannte Ressource hinzu, die in einem ResXDataNode-Objekt angegeben ist.

AddResource(String, Byte[])

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

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 den Ressourcen eine Zeichenfolgenressource hinzu.

Close()

Gibt alle vom ResXResourceWriter verwendeten Ressourcen frei.

Dispose()

Gibt alle vom ResXResourceWriter verwendeten Ressourcen frei.

Dispose(Boolean)

Gibt die von ResXResourceWriter verwendeten nicht verwalteten Ressourcen und optional die verwalteten Ressourcen frei.

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
Finalize()

Dieser Member überschreibt die Finalize()-Methode.

Generate()

Schreibt alle von der AddResource(String, Byte[])-Methode hinzugefügten Ressourcen in die Ausgabedatei oder den Ausgabestream.

GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Gilt für:

Weitere Informationen