ResXResourceWriter Classe

Definição

Grava os recursos em um arquivo de recurso XML (.resx) ou em um fluxo de saída.Writes resources in an XML resource (.resx) file or an output stream.

public ref class ResXResourceWriter : IDisposable, System::Resources::IResourceWriter
public ref class ResXResourceWriter : System::Resources::IResourceWriter
public class ResXResourceWriter : IDisposable, System.Resources.IResourceWriter
public class ResXResourceWriter : System.Resources.IResourceWriter
type ResXResourceWriter = class
    interface IResourceWriter
    interface IDisposable
Public Class ResXResourceWriter
Implements IDisposable, IResourceWriter
Public Class ResXResourceWriter
Implements IResourceWriter
Herança
ResXResourceWriter
Implementações

Exemplos

O exemplo a seguir cria um arquivo. resx chamado CarResources.resx que armazena seis cadeias de caracteres, um ícone e dois objetos definidos pelo aplicativo (dois objetos Automobile).The following example creates a .resx file named CarResources.resx that stores six strings, an icon, and two application-defined objects (two Automobile objects). Observe que a classe Automobile, que é definida e instanciada no exemplo, é marcada com o 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

Comentários

O ResXResourceWriter grava recursos em formato XML.The ResXResourceWriter writes resources in XML format. Para gravar um arquivo de recurso binário, use ResourceWriter.To write a binary resource file, use ResourceWriter.

Os recursos são especificados como pares de nome/valor usando o método AddResource.Resources are specified as name/value pairs using the AddResource method. Os nomes de recursos diferenciam maiúsculas de minúsculas quando usados para pesquisas; Mas para dar suporte mais facilmente a ferramentas de criação e ajudar a eliminar bugs, ResXResourceWriter não permite que um arquivo. resx tenha nomes que variem apenas de maiúsculas e 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 criar um arquivo. resx, crie um ResXResourceWriter com um nome de arquivo exclusivo, chame AddResource pelo menos uma vez, chame Generate para gravar o arquivo de recursos em disco e, em seguida, chame Close para fechar o arquivo.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. Chamar Close, implicitamente, Generate o arquivo, se necessário.Calling Close will implicitly Generate the file if required.

Os recursos não são necessariamente gravados na mesma ordem em que foram adicionados.The resources are not necessarily written in the same order they were added.

Para obter mais informações sobre o formato de um arquivo. resx, consulte trabalhando com arquivos. resx programaticamente.For more information on the format of a.resx file, see Working with .resx Files Programmatically.

Observação

Esta classe contém uma demanda de link e uma demanda de herança no nível de classe que se aplica a todos os membros.This class contains a link demand and an inheritance demand at the class level that applies to all members. Um SecurityException é lançado quando o chamador imediato ou a classe derivada não tem permissão de confiança total.A SecurityException is thrown when either the immediate caller or the derived class does not have full-trust permission.

Construtores

ResXResourceWriter(Stream)

Inicializa uma nova instância da classe ResXResourceWriter que grava os recursos no objeto de fluxo especificado.Initializes a new instance of the ResXResourceWriter class that writes the resources to the specified stream object.

ResXResourceWriter(Stream, Func<Type,String>)

Inicializa uma nova instância da classe ResXResourceWriter que grava os recursos em um objeto de fluxo especificado e define um delegado do conversor.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 a gravação de assemblies de recurso que direcionam versões do .NET Framework antes do .NET Framework 4.NET Framework 4 usando os nomes de assembly qualificados.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)

Inicializa uma nova instância da classe ResXResourceWriter que grava os recursos no arquivo especificado.Initializes a new instance of the ResXResourceWriter class that writes the resources to the specified file.

ResXResourceWriter(String, Func<Type,String>)

Inicializa uma nova instância da classe ResXResourceWriter que grava os recursos em um arquivo especificado e define um delegado que permite a gravação de assemblies de recurso que direcionam versões do .NET Framework antes do .NET Framework 4.NET Framework 4 usando nomes de assembly qualificados.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)

Inicializa uma nova instância da classe ResXResourceWriter que é gravada para o objeto TextWriter especificado.Initializes a new instance of the ResXResourceWriter class that writes to the specified TextWriter object.

ResXResourceWriter(TextWriter, Func<Type,String>)

Inicializa uma nova instância da classe ResXResourceWriter que grava os recursos em um objeto TextWriter especificado e define um delegado que permite a gravação de assemblies de recurso que direcionam versões do .NET Framework antes do .NET Framework 4.NET Framework 4 usando nomes de assembly qualificados.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

Especifica o tipo de conteúdo padrão para um objeto binário.Specifies the default content type for a binary object. Este campo é somente leitura.This field is read-only.

ByteArraySerializedObjectMimeType

Especifica o tipo de conteúdo padrão para um objeto de matriz de bytes.Specifies the default content type for a byte array object. Este campo é somente leitura.This field is read-only.

DefaultSerializedObjectMimeType

Especifica o tipo de conteúdo padrão para um objeto.Specifies the default content type for an object. Este campo é somente leitura.This field is read-only.

ResMimeType

Especifica o tipo de conteúdo de um recurso XML.Specifies the content type of an XML resource. Este campo é somente leitura.This field is read-only.

ResourceSchema

Especifica o esquema a ser usado para gravar o arquivo XML.Specifies the schema to use in writing the XML file. Este campo é somente leitura.This field is read-only.

SoapSerializedObjectMimeType

Especifica o tipo de conteúdo para um objeto SOAP.Specifies the content type for a SOAP object. Este campo é somente leitura.This field is read-only.

Version

Especifica a versão do esquema que é compatível com a saída XML.Specifies the version of the schema that the XML output conforms to. Este campo é somente leitura.This field is read-only.

Propriedades

BasePath

Obtém ou define o caminho base para o caminho relativo do arquivo especificado em um objeto ResXFileRef.Gets or sets the base path for the relative file path specified in a ResXFileRef object.

Métodos

AddAlias(String, AssemblyName)

Adiciona o alias especificado a uma lista de aliases.Adds the specified alias to a list of aliases.

AddMetadata(String, Byte[])

Adiciona uma propriedade de tempo de design cujo valor é especificado como uma matriz de bytes à lista de recursos a serem gravados.Adds a design-time property whose value is specified as a byte array to the list of resources to write.

AddMetadata(String, Object)

Adiciona uma propriedade de tempo de design cujo valor é especificado como um objeto à lista de recursos a serem gravados.Adds a design-time property whose value is specified as an object to the list of resources to write.

AddMetadata(String, String)

Adiciona uma propriedade de tempo de design cujo valor é especificado como uma cadeia de caracteres à lista de recursos a serem gravados.Adds a design-time property whose value is specified as a string to the list of resources to write.

AddResource(ResXDataNode)

Adiciona um recurso nomeado especificado em um objeto ResXDataNode à lista de recursos a serem gravados.Adds a named resource specified in a ResXDataNode object to the list of resources to write.

AddResource(String, Byte[])

Adiciona um recurso nomeado especificado como uma matriz de bytes à lista de recursos a serem gravados.Adds a named resource specified as a byte array to the list of resources to write.

AddResource(String, Object)

Adiciona um recurso nomeado especificado como um objeto à lista de recursos a serem gravados.Adds a named resource specified as an object to the list of resources to write.

AddResource(String, String)

Adiciona um recurso de cadeia de caracteres aos recursos.Adds a string resource to the resources.

Close()

Libera todos os recursos usados pelo ResXResourceWriter.Releases all resources used by the ResXResourceWriter.

Dispose()

Libera todos os recursos usados pelo ResXResourceWriter.Releases all resources used by the ResXResourceWriter.

Dispose(Boolean)

Libera os recursos não gerenciados usados pelo ResXResourceWriter e opcionalmente libera os recursos gerenciados.Releases the unmanaged resources used by the ResXResourceWriter and optionally releases the managed resources.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.Determines whether the specified object is equal to the current object.

(Herdado de Object)
Finalize()

Esse membro substitui o método Finalize().This member overrides the Finalize() method.

Generate()

Grava todos os recursos adicionados pelo método AddResource(String, Byte[]) no arquivo de saída ou no fluxo.Writes all resources added by the AddResource(String, Byte[]) method to the output file or stream.

GetHashCode()

Serve como a função de hash padrão.Serves as the default hash function.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.Gets the Type of the current instance.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Object atual.Creates a shallow copy of the current Object.

(Herdado de Object)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.Returns a string that represents the current object.

(Herdado de Object)

Aplica-se a

Veja também