Sdílet prostřednictvím


ResXResourceWriter Třída

Definice

Zapisuje prostředky do souboru prostředků XML (.resx) nebo do výstupního datového proudu.

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
Dědičnost
ResXResourceWriter
Implementuje

Příklady

Následující příklad vytvoří soubor .resx s názvem CarResources.resx , který obsahuje šest řetězců, ikonu a dva objekty definované aplikací (dva Automobile objekty). Všimněte si Automobile , že třída, která je definována a vytvořena v příkladu, je označena atributem SerializableAttribute .

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

Poznámky

Zapisuje ResXResourceWriter prostředky ve formátu XML. K zápisu binárního souboru prostředků použijte ResourceWriter.

Prostředky se zadají jako páry název/hodnota pomocí AddResource metody . V názvech prostředků se při vyhledávání rozlišují malá a malá písmena. ale pro snadnější podporu nástrojů pro vytváření obsahu a pomoct odstranit chyby, ResXResourceWriter neumožňuje soubor a.resx mít názvy, které se liší pouze podle písmen.

Pokud chcete vytvořit soubor a.resx, vytvořte ResXResourceWriter soubor s jedinečným názvem, zavolejte AddResource aspoň jednou, zavolejte Generate a zapište soubor prostředků na disk a pak zavolejte Close , aby se soubor zavřel. Volání Close bude v případě potřeby soubor implicitně Generate vyžadovat.

Prostředky nemusí být nutně napsané ve stejném pořadí, v jakém byly přidány.

Další informace o formátu souboru a.resx najdete v tématu Programová práce se soubory .resx.

Poznámka

Tato třída obsahuje požadavek na propojení a požadavek dědičnosti na úrovni třídy, který se vztahuje na všechny členy. Vyvolá SecurityException se, když přímý volající nebo odvozená třída nemá oprávnění plné důvěryhodnosti.

Konstruktory

ResXResourceWriter(Stream)

Inicializuje novou instanci ResXResourceWriter třídy, která zapisuje prostředky do zadaného objektu datového proudu.

ResXResourceWriter(Stream, Func<Type,String>)

Inicializuje novou instanci ResXResourceWriter třídy, která zapisuje prostředky do zadaného objektu streamu a nastaví delegáta převaděče. Tento delegát umožňuje zapsat sestavení prostředků, které jsou cílové verze rozhraní .NET Framework před rozhraním .NET Framework 4 pomocí kvalifikovaných názvů sestavení.

ResXResourceWriter(String)

Inicializuje novou instanci ResXResourceWriter třídy, která zapisuje prostředky do zadaného souboru.

ResXResourceWriter(String, Func<Type,String>)

Inicializuje novou instanci ResXResourceWriter třídy, která zapisuje prostředky do zadaného souboru a nastaví delegáta, který umožňuje sestavení prostředků zapisovat cílové verze rozhraní .NET Framework před rozhraním .NET Framework 4 pomocí kvalifikovaných názvů sestavení.

ResXResourceWriter(TextWriter)

Inicializuje novou instanci ResXResourceWriter třídy, která zapisuje do zadaného TextWriter objektu.

ResXResourceWriter(TextWriter, Func<Type,String>)

Inicializuje novou instanci ResXResourceWriter třídy, která zapisuje prostředky do zadaného TextWriter objektu a nastaví delegáta, který umožňuje, aby sestavení prostředků byly zapsány cílové verze rozhraní .NET Framework před rozhraním .NET Framework 4 pomocí kvalifikovaných názvů sestavení.

Pole

BinSerializedObjectMimeType

Určuje výchozí typ obsahu pro binární objekt. Toto pole je jen ke čtení.

ByteArraySerializedObjectMimeType

Určuje výchozí typ obsahu pro objekt pole bajtů. Toto pole je jen ke čtení.

DefaultSerializedObjectMimeType

Určuje výchozí typ obsahu pro objekt. Toto pole je jen ke čtení.

ResMimeType

Určuje typ obsahu prostředku XML. Toto pole je jen ke čtení.

ResourceSchema

Určuje schéma, které se má použít při psaní souboru XML. Toto pole je jen ke čtení.

SoapSerializedObjectMimeType

Určuje typ obsahu pro objekt SOAP. Toto pole je jen ke čtení.

Version

Určuje verzi schématu, které výstup XML odpovídá. Toto pole je jen ke čtení.

Vlastnosti

BasePath

Získá nebo nastaví základní cestu pro relativní cestu k souboru zadané v objektu ResXFileRef .

Metody

AddAlias(String, AssemblyName)

Přidá zadaný alias do seznamu aliasů.

AddMetadata(String, Byte[])

Přidá vlastnost v době návrhu, jejíž hodnota je určena jako pole bajtů, do seznamu prostředků k zápisu.

AddMetadata(String, Object)

Přidá vlastnost v době návrhu, jejíž hodnota je určena jako objekt, do seznamu prostředků k zápisu.

AddMetadata(String, String)

Přidá vlastnost v době návrhu, jejíž hodnota je určena jako řetězec do seznamu prostředků k zápisu.

AddResource(ResXDataNode)

Přidá pojmenovaný prostředek zadaný v objektu ResXDataNode do seznamu prostředků k zápisu.

AddResource(String, Byte[])

Přidá pojmenovaný prostředek zadaný jako pole bajtů do seznamu prostředků k zápisu.

AddResource(String, Object)

Přidá pojmenovaný prostředek zadaný jako objekt do seznamu prostředků k zápisu.

AddResource(String, String)

Přidá k prostředkům řetězcový prostředek.

Close()

Uvolní všechny prostředky používané nástrojem ResXResourceWriter.

Dispose()

Uvolní všechny prostředky používané nástrojem ResXResourceWriter.

Dispose(Boolean)

Uvolní nespravované prostředky používané ResXResourceWriter nástrojem a volitelně uvolní spravované prostředky.

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
Finalize()

Tento člen přepíše metodu Finalize() .

Generate()

Zapíše všechny prostředky přidané metodou AddResource(String, Byte[]) do výstupního souboru nebo datového proudu.

GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetType()

Získá aktuální Type instanci.

(Zděděno od Object)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Platí pro

Viz také