ResXResourceWriter Klasse

Definition

Schreibt Ressourcen in einer XML-Ressourcendatei (RESX) oder einem Ausgabedatenstrom.

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 mit dem Namen CarResources.resx erstellt, die sechs Zeichenfolgen, ein Symbol und zwei anwendungsdefinierte Objekte (zwei Automobile Objekte) speichert. Beachten Sie, dass die Automobile im Beispiel definierte und instanziierte Klasse mit dem SerializableAttribute Attribut markiert 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

Die ResXResourceWriter Schreibressourcen werden im XML-Format geschrieben. Verwenden Sie ResourceWriterzum Schreiben einer binärressourcendatei .

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 wird. um jedoch die Erstellungstools einfacher zu unterstützen und Fehler zu beseitigen, ResXResourceWriter lässt die Datei a.resx nicht zu, namen zu haben, die nur nach Groß-/Kleinschreibung variieren.

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

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.

Note

Diese Klasse enthält einen Link-Bedarf und einen Vererbungsbedarf auf Klassenebene, der für alle Mitglieder gilt. Ein SecurityException wird ausgelöst, wenn entweder der unmittelbare Aufrufer oder die abgeleitete Klasse nicht über die Berechtigung zur vollen Vertrauenswürdigkeit verfügt.

Konstruktoren

Name Beschreibung
ResXResourceWriter(Stream, Func<Type,String>)

Initialisiert eine neue Instanz der ResXResourceWriter Klasse, die die Ressourcen in ein angegebenes Streamobjekt schreibt und einen Konverterdelegat festlegt. Mit diesem Delegat können Ressourcenassemblys geschrieben werden, die die Zielversionen des .NET Frameworks vor .NET Framework 4 mithilfe qualifizierter Assemblynamen verwenden.

ResXResourceWriter(Stream)

Initialisiert eine neue Instanz der ResXResourceWriter Klasse, die die Ressourcen in das angegebene Streamobjekt 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, mit dem Ressourcenassemblys geschrieben werden können, die zielversionen des .NET Frameworks vor .NET Framework 4 mithilfe qualifizierter Assemblynamen geschrieben werden können.

ResXResourceWriter(String)

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

ResXResourceWriter(TextWriter, Func<Type,String>)

Initialisiert eine neue Instanz der klasse ResXResourceWriter, die die Ressourcen in ein angegebenes TextWriter -Objekt schreibt und einen Delegaten festlegt, mit dem Ressourcenassemblys geschrieben werden können, die zielversionen des .NET Frameworks vor .NET Framework 4 mithilfe qualifizierter Assemblynamen geschrieben werden können.

ResXResourceWriter(TextWriter)

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

Felder

Name Beschreibung
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 an, das beim Schreiben der XML-Datei verwendet werden soll. 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, der die XML-Ausgabe entspricht. Dieses Feld ist schreibgeschützt.

Eigenschaften

Name Beschreibung
BasePath

Dient zum Abrufen oder Festlegen des Basispfads für den relativen Dateipfad, der in einem ResXFileRef Objekt angegeben ist.

Methoden

Name Beschreibung
AddAlias(String, AssemblyName)

Fügt den angegebenen Alias einer Liste von Aliasen hinzu.

AddMetadata(String, Byte[])

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

AddMetadata(String, Object)

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

AddMetadata(String, String)

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

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

Close()

Gibt alle vom ResXResourceWriterverwendeten Ressourcen frei.

Dispose()

Gibt alle vom ResXResourceWriterverwendeten Ressourcen frei.

Dispose(Boolean)

Gibt die nicht verwalteten Ressourcen frei, die von den ResXResourceWriter verwalteten Ressourcen verwendet werden, und gibt optional die verwalteten Ressourcen frei.

Equals(Object)

Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht.

(Geerbt von Object)
Finalize()

Dieses Element setzt die Finalize() Methode außer Kraft.

Generate()

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

GetHashCode()

Dient als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
ToString()

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

(Geerbt von Object)

Gilt für:

Weitere Informationen