ResXResourceWriter Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Escribe recursos en un archivo de recursos XML (.resx) o en un flujo de salida.
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
-
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 Automobile clase , que se define y crea una instancia en el ejemplo, se etiqueta con el SerializableAttribute atributo .
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 varían solo por caso.
Para crear un archivo.resx, cree un ResXResourceWriter con un nombre de archivo único, llame AddResource al menos una vez, llame Generate 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 de un archivo.resx, vea Trabajar con archivos .resx mediante programación.
Note
Esta clase contiene tanto una demanda de vínculo como una demanda de herencia a nivel de clase, las cuales se aplican a todos los miembros. Se produce una SecurityException cuando el autor de la llamada inmediato o la clase derivada no tiene permiso de plena confianza.
Constructores
| Nombre | Description |
|---|---|
| ResXResourceWriter(Stream, Func<Type,String>) |
Inicializa una nueva instancia de la ResXResourceWriter clase que escribe los recursos en un objeto de secuencia especificado y establece un delegado de convertidor. Este delegado permite escribir ensamblados de recursos que tienen como destino las versiones de .NET Framework antes de .NET Framework 4 mediante nombres de ensamblado calificados. |
| ResXResourceWriter(Stream) |
Inicializa una nueva instancia de la ResXResourceWriter clase que escribe los recursos en el objeto de secuencia especificado. |
| ResXResourceWriter(String, Func<Type,String>) |
Inicializa una nueva instancia de la clase /> de |
| ResXResourceWriter(String) |
Inicializa una nueva instancia de la ResXResourceWriter clase que escribe los recursos en el archivo especificado. |
| ResXResourceWriter(TextWriter, Func<Type,String>) |
Inicializa una nueva instancia de la clase /> de |
| ResXResourceWriter(TextWriter) |
Inicializa una nueva instancia de la ResXResourceWriter clase que escribe en el objeto especificado TextWriter . |
Campos
| Nombre | Description |
|---|---|
| BinSerializedObjectMimeType |
Especifica el tipo de contenido predeterminado para un objeto binario. Este campo es de sólo lectura. |
| ByteArraySerializedObjectMimeType |
Especifica el tipo de contenido predeterminado para un objeto de matriz de bytes. Este campo es de sólo lectura. |
| DefaultSerializedObjectMimeType |
Especifica el tipo de contenido predeterminado para un objeto . Este campo es de sólo lectura. |
| ResMimeType |
Especifica el tipo de contenido de un recurso XML. Este campo es de sólo lectura. |
| ResourceSchema |
Especifica el esquema que se va a usar al escribir el archivo XML. Este campo es de sólo lectura. |
| SoapSerializedObjectMimeType |
Especifica el tipo de contenido de un objeto SOAP. Este campo es de sólo lectura. |
| Version |
Especifica la versión del esquema al que se ajusta la salida XML. Este campo es de sólo lectura. |
Propiedades
| Nombre | Description |
|---|---|
| BasePath |
Obtiene o establece la ruta de acceso base de la ruta de acceso del archivo relativa especificada en un ResXFileRef objeto . |
Métodos
| Nombre | Description |
|---|---|
| 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 van 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 van 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 van a escribir. |
| AddResource(ResXDataNode) |
Agrega un recurso con nombre especificado en un ResXDataNode objeto a la lista de recursos que se van a escribir. |
| AddResource(String, Byte[]) |
Agrega un recurso con nombre especificado como una matriz de bytes a la lista de recursos que se van a escribir. |
| AddResource(String, Object) |
Agrega un recurso con nombre especificado como un objeto a la lista de recursos que se van a escribir. |
| AddResource(String, String) |
Agrega un recurso de cadena a los recursos. |
| Close() |
Libera todos los recursos usados por .ResXResourceWriter |
| Dispose() |
Libera todos los recursos usados por .ResXResourceWriter |
| Dispose(Boolean) |
Libera los recursos no administrados utilizados por ResXResourceWriter y, opcionalmente, libera los recursos administrados. |
| Equals(Object) |
Determina si el objeto especificado es igual al objeto actual. (Heredado de Object) |
| Finalize() |
Este miembro invalida el Finalize() método . |
| Generate() |
Escribe todos los recursos agregados por el AddResource(String, Byte[]) método al archivo o secuencia de salida. |
| GetHashCode() |
Actúa 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 Objectactual. (Heredado de Object) |
| ToString() |
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |