Compartir a través de


ResXResourceWriter Clase

Definición

Escribe recursos en un archivo de recursos XML (.resx) o en un flujo de salida.

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
Herencia
ResXResourceWriter
Implementaciones

Ejemplos

En el ejemplo siguiente se crea un archivo .resx denominado CarResources.resx que almacena seis cadenas, un icono y dos objetos definidos por la aplicación (dos Automobile objetos). Tenga en cuenta que la clase Automobile, que se define y de la que se crea una instancia en el ejemplo, se etiqueta con el atributo 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

Comentarios

ResXResourceWriter Escribe recursos en formato XML. Para escribir un archivo de recursos binarios, use ResourceWriter.

Los recursos se especifican como pares nombre-valor mediante el AddResource método . Los nombres de recursos distinguen mayúsculas de minúsculas cuando se usan para búsquedas; pero para admitir más fácilmente las herramientas de creación y ayudar a eliminar errores, ResXResourceWriter no permite que un archivo a.resx tenga nombres que solo varían según el caso.

Para crear un archivo.resx, cree un ResXResourceWriter con un nombre de archivo único, llame al menos una vez, llame AddResourceGenerate a para escribir el archivo de recursos en el disco y, a continuación, llame Close a para cerrar el archivo. Si es necesario, llamará Close implícitamente Generate al archivo.

Los recursos no se escriben necesariamente en el mismo orden en que se agregaron.

Para obtener más información sobre el formato del archivo a.resx, vea Trabajar con archivos .resx mediante programación.

Nota

Esta clase contiene una demanda de vínculo y una demanda de herencia en el nivel de clase que se aplica a todos los miembros. SecurityException Se produce una excepción cuando el llamador inmediato o la clase derivada no tienen permiso de plena confianza.

Constructores

ResXResourceWriter(Stream)

Inicializa una nueva instancia de la clase ResXResourceWriter que escribe los recursos en el objeto de secuencia especificado.

ResXResourceWriter(Stream, Func<Type,String>)

Inicializa una nueva instancia de la clase ResXResourceWriter que escribe los recursos en un objeto de secuencia especificado y establece un delegado de convertidor. Este delegado permite escribir ensamblados de recursos en las versiones de destino de .NET Framework anteriores a .NET Framework 4 utilizando nombres de ensamblado calificados.

ResXResourceWriter(String)

Inicializa una nueva instancia de la clase ResXResourceWriter que escribe los recursos en el archivo especificado.

ResXResourceWriter(String, Func<Type,String>)

Inicializa una nueva instancia de la clase ResXResourceWriter que escribe los recursos en un objeto especificado y establece un delegado que permite escribir ensamblados de recursos en versiones de destino de .NET Framework anteriores a .NET Framework 4 utilizando nombres de ensamblado calificados.

ResXResourceWriter(TextWriter)

Inicializa una nueva instancia de la clase ResXResourceWriter que escribe en el objeto TextWriter especificado.

ResXResourceWriter(TextWriter, Func<Type,String>)

Inicializa una nueva instancia de la clase ResXResourceWriter que escribe los recursos en un objeto TextWriter especificado y establece un delegado que permite escribir ensamblados de recursos en versiones de destino de .NET Framework anteriores a .NET Framework 4 utilizando nombres de ensamblado calificados.

Campos

BinSerializedObjectMimeType

Especifica el tipo de contenido predeterminado para un objeto binario. Este campo es de solo lectura.

ByteArraySerializedObjectMimeType

Especifica el tipo de contenido predeterminado para un objeto de matriz de bytes. Este campo es de solo lectura.

DefaultSerializedObjectMimeType

Especifica el tipo de contenido predeterminado para un objeto. Este campo es de solo lectura.

ResMimeType

Especifica el tipo de contenido de un recurso XML. Este campo es de solo lectura.

ResourceSchema

Especifica el esquema que se debe utilizar para escribir el archivo XML. Este campo es de solo lectura.

SoapSerializedObjectMimeType

Especifica el tipo de contenido para un objeto SOAP. Este campo es de solo lectura.

Version

Especifica la versión del esquema a la que se ajusta la salida XML. Este campo es de solo lectura.

Propiedades

BasePath

Obtiene o establece la ruta de acceso base para la ruta de acceso relativa al archivo especificada en un objeto ResXFileRef.

Métodos

AddAlias(String, AssemblyName)

Agrega el alias especificado a una lista de alias.

AddMetadata(String, Byte[])

Agrega una propiedad en tiempo de diseño cuyo valor se especifica como una matriz de bytes a la lista de recursos que se va a escribir.

AddMetadata(String, Object)

Agrega una propiedad en tiempo de diseño cuyo valor se especifica como un objeto a la lista de recursos que se va a escribir.

AddMetadata(String, String)

Agrega una propiedad en tiempo de diseño cuyo valor se especifica como una cadena a la lista de recursos que se va a escribir.

AddResource(ResXDataNode)

Agrega un recurso con nombre, especificado en un objeto ResXDataNode, a la lista de recursos que se va a escribir.

AddResource(String, Byte[])

Agrega un recurso con nombre, especificado como una matriz de bytes, a la lista de recursos que se va a escribir.

AddResource(String, Object)

Agrega un recurso con nombre, especificado como un objeto, a la lista de recursos que se va a escribir.

AddResource(String, String)

Agrega un recurso de cadena a los recursos.

Close()

Libera todos los recursos que usa ResXResourceWriter.

Dispose()

Libera todos los recursos que usa ResXResourceWriter.

Dispose(Boolean)

Libera los recursos no administrados que usa ResXResourceWriter y, de forma opcional, libera los recursos administrados.

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
Finalize()

Este miembro reemplaza el método Finalize().

Generate()

Escribe en la secuencia o el archivo de salida todos los recursos agregados por el método AddResource(String, Byte[]).

GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Se aplica a

Consulte también