ResXResourceWriter ResXResourceWriter ResXResourceWriter ResXResourceWriter Class

Definición

Escribe recursos en un archivo de recursos XML (.resx) o en un flujo de salida.Writes resources in an XML resource (.resx) file or an output stream.

public ref class ResXResourceWriter : System::Resources::IResourceWriter
public class ResXResourceWriter : System.Resources.IResourceWriter
type ResXResourceWriter = class
    interface IResourceWriter
    interface IDisposable
Public Class ResXResourceWriter
Implements IResourceWriter
Herencia
ResXResourceWriterResXResourceWriterResXResourceWriterResXResourceWriter
Implementaciones

Ejemplos

En el ejemplo siguiente se crea un archivo. CarResources.resx resx denominado que almacena seis cadenas, un icono y dos objetos definidos por la aplicación Automobile (dos objetos).The following example creates a .resx file named CarResources.resx that stores six strings, an icon, and two application-defined objects (two Automobile objects). 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.Note that the Automobile class, which is defined and instantiated in the example, is tagged with the SerializableAttribute attribute.

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.The ResXResourceWriter writes resources in XML format. Para escribir un archivo de recursos binario ResourceWriter, use.To write a binary resource file, use ResourceWriter.

Los recursos se especifican como pares de nombre/ AddResource valor mediante el método.Resources are specified as name/value pairs using the AddResource method. Los nombres de los recursos distinguen mayúsculas de minúsculas cuando se usan para búsquedas; pero para facilitar la compatibilidad con las herramientas de creación y ayudar a ResXResourceWriter eliminar errores, no permite que un archivo. resx tenga nombres que solo varíen según el uso de mayúsculas y minúsculas.Resource names are case-sensitive when used for lookups; but to more easily support authoring tools and help eliminate bugs, ResXResourceWriter does not allow a.resx file to have names that vary only by case.

Para crear un archivo. resx, cree un ResXResourceWriter con un nombre de archivo único, AddResource llame al menos una vez Generate , llame a para escribir el archivo de recursos en el Close disco y, a continuación, llame a para cerrar el archivo.To create a.resx file, create a ResXResourceWriter with a unique file name, call AddResource at least once, call Generate to write the resources file to disk, and then call Close to close the file. Al Close llamar a, Generate el archivo se llamará implícitamente si es necesario.Calling Close will implicitly Generate the file if required.

Los recursos no se escriben necesariamente en el mismo orden en que se agregaron.The resources are not necessarily written in the same order they were added.

Para obtener más información sobre el formato de un archivo. resx, vea trabajar con archivos. resx mediante programación.For more information on the format of a.resx file, see Working with .resx Files Programmatically.

Nota

Esta clase contiene una petición de vínculo y una petición de herencia en el nivel de clase que se aplica a todos los miembros.This class contains a link demand and an inheritance demand at the class level that applies to all members. Se SecurityException produce una excepción cuando el llamador inmediato o la clase derivada no tienen permiso de plena confianza.A SecurityException is thrown when either the immediate caller or the derived class does not have full-trust permission.

Constructores

ResXResourceWriter(Stream) ResXResourceWriter(Stream) ResXResourceWriter(Stream) ResXResourceWriter(Stream)

Inicializa una nueva instancia de la clase ResXResourceWriter que escribe los recursos en el objeto de flujo especificado.Initializes a new instance of the ResXResourceWriter class that writes the resources to the specified stream object.

ResXResourceWriter(Stream, Func<Type,String>) ResXResourceWriter(Stream, Func<Type,String>) ResXResourceWriter(Stream, Func<Type,String>) 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.Initializes a new instance of the ResXResourceWriter class that writes the resources to a specified stream object and sets a converter delegate. Este delegado permite escribir ensamblados de recursos en las versiones de destino de .NET Framework anteriores a .NET Framework 4.NET Framework 4 utilizando nombres de ensamblado calificados.This delegate enables resource assemblies to be written that target versions of the .NET Framework before the .NET Framework 4.NET Framework 4 by using qualified assembly names.

ResXResourceWriter(String) ResXResourceWriter(String) ResXResourceWriter(String) ResXResourceWriter(String)

Inicializa una nueva instancia de la clase ResXResourceWriter que escribe los recursos en el archivo especificado.Initializes a new instance of the ResXResourceWriter class that writes the resources to the specified file.

ResXResourceWriter(String, Func<Type,String>) ResXResourceWriter(String, Func<Type,String>) ResXResourceWriter(String, Func<Type,String>) ResXResourceWriter(String, Func<Type,String>)

Inicializa una nueva instancia de la clase ResXResourceWriter que escribe los recursos en un archivo especificado y establece un delegado que permite escribir ensamblados de recursos en versiones de destino de .NET Framework anteriores a .NET Framework 4.NET Framework 4 usando nombres de ensamblado calificados.Initializes a new instance of the ResXResourceWriter class that writes the resources to a specified file and sets a delegate that enables resource assemblies to be written that target versions of the .NET Framework before the .NET Framework 4.NET Framework 4 by using qualified assembly names.

ResXResourceWriter(TextWriter) ResXResourceWriter(TextWriter) ResXResourceWriter(TextWriter) ResXResourceWriter(TextWriter)

Inicializa una nueva instancia de la clase ResXResourceWriter que escribe en el objeto TextWriter especificado.Initializes a new instance of the ResXResourceWriter class that writes to the specified TextWriter object.

ResXResourceWriter(TextWriter, Func<Type,String>) ResXResourceWriter(TextWriter, Func<Type,String>) ResXResourceWriter(TextWriter, Func<Type,String>) 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.NET Framework 4 utilizando nombres de ensamblado calificados.Initializes a new instance of the ResXResourceWriter class that writes the resources to a specified TextWriter object and sets a delegate that enables resource assemblies to be written that target versions of the .NET Framework before the .NET Framework 4.NET Framework 4 by using qualified assembly names.

Campos

BinSerializedObjectMimeType BinSerializedObjectMimeType BinSerializedObjectMimeType BinSerializedObjectMimeType

Especifica el tipo de contenido predeterminado para un objeto binario.Specifies the default content type for a binary object. Este campo es de solo lectura.This field is read-only.

ByteArraySerializedObjectMimeType ByteArraySerializedObjectMimeType ByteArraySerializedObjectMimeType ByteArraySerializedObjectMimeType

Especifica el tipo de contenido predeterminado para un objeto de matriz de bytes.Specifies the default content type for a byte array object. Este campo es de solo lectura.This field is read-only.

DefaultSerializedObjectMimeType DefaultSerializedObjectMimeType DefaultSerializedObjectMimeType DefaultSerializedObjectMimeType

Especifica el tipo de contenido predeterminado para un objeto.Specifies the default content type for an object. Este campo es de solo lectura.This field is read-only.

ResMimeType ResMimeType ResMimeType ResMimeType

Especifica el tipo de contenido de un recurso XML.Specifies the content type of an XML resource. Este campo es de solo lectura.This field is read-only.

ResourceSchema ResourceSchema ResourceSchema ResourceSchema

Especifica el esquema que se debe utilizar para escribir el archivo XML.Specifies the schema to use in writing the XML file. Este campo es de solo lectura.This field is read-only.

SoapSerializedObjectMimeType SoapSerializedObjectMimeType SoapSerializedObjectMimeType SoapSerializedObjectMimeType

Especifica el tipo de contenido para un objeto SOAP.Specifies the content type for a SOAP object. Este campo es de solo lectura.This field is read-only.

Version Version Version Version

Especifica la versión del esquema a la que se ajusta la salida XML.Specifies the version of the schema that the XML output conforms to. Este campo es de solo lectura.This field is read-only.

Propiedades

BasePath BasePath BasePath BasePath

Obtiene o establece la ruta de acceso base para la ruta de acceso relativa al archivo especificada en un objeto ResXFileRef.Gets or sets the base path for the relative file path specified in a ResXFileRef object.

Métodos

AddAlias(String, AssemblyName) AddAlias(String, AssemblyName) AddAlias(String, AssemblyName) AddAlias(String, AssemblyName)

Agrega el alias especificado a una lista de alias.Adds the specified alias to a list of aliases.

AddMetadata(String, Byte[]) AddMetadata(String, Byte[]) AddMetadata(String, Byte[]) 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.Adds a design-time property whose value is specified as a byte array to the list of resources to write.

AddMetadata(String, Object) AddMetadata(String, Object) AddMetadata(String, Object) 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.Adds a design-time property whose value is specified as an object to the list of resources to write.

AddMetadata(String, String) AddMetadata(String, String) AddMetadata(String, String) 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.Adds a design-time property whose value is specified as a string to the list of resources to write.

AddResource(ResXDataNode) AddResource(ResXDataNode) AddResource(ResXDataNode) AddResource(ResXDataNode)

Agrega un recurso con nombre, especificado en un objeto ResXDataNode, a la lista de recursos que se va a escribir.Adds a named resource specified in a ResXDataNode object to the list of resources to write.

AddResource(String, Byte[]) AddResource(String, Byte[]) AddResource(String, Byte[]) AddResource(String, Byte[])

Agrega un recurso con nombre, especificado como una matriz de bytes, a la lista de recursos que se va a escribir.Adds a named resource specified as a byte array to the list of resources to write.

AddResource(String, Object) AddResource(String, Object) AddResource(String, Object) AddResource(String, Object)

Agrega un recurso con nombre, especificado como un objeto, a la lista de recursos que se va a escribir.Adds a named resource specified as an object to the list of resources to write.

AddResource(String, String) AddResource(String, String) AddResource(String, String) AddResource(String, String)

Agrega un recurso de cadena a los recursos.Adds a string resource to the resources.

Close() Close() Close() Close()

Libera todos los recursos que usa ResXResourceWriter.Releases all resources used by the ResXResourceWriter.

Dispose() Dispose() Dispose() Dispose()

Libera todos los recursos que usa ResXResourceWriter.Releases all resources used by the ResXResourceWriter.

Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

Libera los recursos no administrados que usa ResXResourceWriter y, de forma opcional, libera los recursos administrados.Releases the unmanaged resources used by the ResXResourceWriter and optionally releases the managed resources.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determina si el objeto especificado es igual al objeto actual.Determines whether the specified object is equal to the current object.

(Inherited from Object)
Finalize() Finalize() Finalize() Finalize()

Este miembro reemplaza el método Finalize().This member overrides the Finalize() method.

Generate() Generate() Generate() Generate()

Escribe en el archivo de resultados o en el flujo de salida todos los recursos agregados por el método AddResource(String, Byte[]).Writes all resources added by the AddResource(String, Byte[]) method to the output file or stream.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Sirve como la función hash predeterminada.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

Obtiene el Type de la instancia actual.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crea una copia superficial del objeto Object actual.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

Devuelve una cadena que representa el objeto actual.Returns a string that represents the current object.

(Inherited from Object)

Seguridad

LinkDemand
para plena confianza para el llamador inmediato.for full trust for the immediate caller. Un código de confianza parcial no puede utilizar este miembro.This member cannot be used by partially trusted code.

InheritanceDemand
para plena confianza para los desarrolladores de herederos.for full trust for inheritors. Este miembro no se puede heredar por código de confianza parcial.This member cannot be inherited by partially trusted code.

Se aplica a

Consulte también: