ResXResourceSet Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Representa todos os recursos em um arquivo de recurso XML (.resx).
public ref class ResXResourceSet : System::Resources::ResourceSet
public class ResXResourceSet : System.Resources.ResourceSet
type ResXResourceSet = class
inherit ResourceSet
Public Class ResXResourceSet
Inherits ResourceSet
- Herança
Exemplos
O exemplo a seguir cria uma instância de um ResXResourceSet objeto e ilustra como enumerar seus recursos e recuperar recursos individuais por nome. Para cada recurso que ele enumera, o exemplo usa a IDictionaryEnumerator.Key propriedade em uma chamada para o GetString
método ou GetObject
, dependendo se o valor do recurso é uma cadeia de caracteres ou um objeto.
using System;
using System.Collections;
using System.Drawing;
using System.Resources;
public class Example
{
public static void Main()
{
CreateResXFile();
ResXResourceSet resSet = new ResXResourceSet(@".\StoreResources.resx");
IDictionaryEnumerator dict = resSet.GetEnumerator();
while (dict.MoveNext()) {
string key = (string) dict.Key;
// Retrieve resource by name.
if (dict.Value is string)
Console.WriteLine("{0}: {1}", key, resSet.GetString(key));
else
Console.WriteLine("{0}: {1}", key, resSet.GetObject(key));
}
}
private static void CreateResXFile()
{
Bitmap logo = new Bitmap(@".\Logo.bmp");
ResXDataNode node;
ResXResourceWriter rw = new ResXResourceWriter(@".\StoreResources.resx");
node = new ResXDataNode("Logo", logo);
node.Comment = "The corporate logo.";
rw.AddResource(node);
rw.AddResource("AppTitle", "Store Locations");
node = new ResXDataNode("nColumns", 5);
node.Comment = "The number of columns in the Store Location table";
rw.AddResource(node);
rw.AddResource("City", "City");
rw.AddResource("State", "State");
rw.AddResource("Code", "Zip Code");
rw.AddResource("Telephone", "Phone");
rw.Generate();
rw.Close();
}
}
// The example displays the following output:
// Telephone: Phone
// Code: Zip Code
// State: State
// City: City
// nColumns: 5
// AppTitle: Store Locations
// Logo: System.Drawing.Bitmap
Imports System.Collections
Imports System.Drawing
Imports System.Resources
Module Example
Public Sub Main()
CreateResXFile()
Dim resSet As New ResXResourceSet(".\StoreResources.resx")
Dim dict As IDictionaryEnumerator = resSet.GetEnumerator()
Do While dict.MoveNext()
Dim key As String = CStr(dict.Key)
' Retrieve resource by name.
If typeof dict.Value Is String Then
Console.WriteLine("{0}: {1}", key, resSet.GetString(key))
Else
Console.WriteLine("{0}: {1}", key, resSet.GetObject(key))
End If
Loop
End Sub
Private Sub CreateResXFile()
Dim logo As New Bitmap(".\Logo.bmp")
Dim node As ResXDataNode
Dim rw As New ResXResourceWriter(".\StoreResources.resx")
node = New ResXDataNode("Logo", logo)
node.Comment = "The corporate logo."
rw.AddResource(node)
rw.AddResource("AppTitle", "Store Locations")
node = New ResXDataNode("nColumns", 5)
node.Comment = "The number of columns in the Store Location table"
rw.AddResource(node)
rw.AddResource("City", "City")
rw.AddResource("State", "State")
rw.AddResource("Code", "Zip Code")
rw.AddResource("Telephone", "Phone")
rw.Generate()
rw.Close()
End Sub
End Module
' The example displays the following output:
' Telephone: Phone
' Code: Zip Code
' State: State
' City: City
' nColumns: 5
' AppTitle: Store Locations
' Logo: System.Drawing.Bitmap
O exemplo chama um CreateResXFile
método para criar o arquivo de recurso XML necessário. Ele requer um arquivo bitmap chamado Logo.bmp no diretório no qual o exemplo está em execução.
Comentários
Importante
Chamar métodos desta classe quando você tiver dados não confiáveis é um risco à segurança. Chame os métodos dessa classe somente quando você tiver dados confiáveis. Para obter mais informações, consulte Validar todas as entradas.
A ResXResourceSet classe enumera em um IResourceReader, carrega cada nome e valor e os armazena em uma tabela de hash. Em seguida, você pode enumerar os recursos no ResXResourceSet objeto ou recuperar recursos individuais por nome.
Um ResXResourceSet objeto fornece uma maneira conveniente de ler todos os recursos em um arquivo .resx na memória. Você pode usar o GetObject método para recuperar um recurso específico quando o arquivo .resx tiver sido lido em uma ResXResourceSet instância.
Notas aos Herdeiros
Classes derivadas de ResXResourceSet que usam seu próprio leitor de recursos e gravador devem substituir os GetDefaultReader() métodos e GetDefaultWriter() para fornecer a funcionalidade apropriada para interpretar a ResXResourceSet instância.
Construtores
ResXResourceSet(Stream) |
Inicializa uma nova instância da classe ResXResourceSet usando o padrão do sistema ResXResourceReader para ler recursos do fluxo especificado. |
ResXResourceSet(String) |
Inicializa uma nova instância da ResXResourceSet classe usando o padrão ResXResourceReader do sistema que abre e lê recursos do arquivo especificado. |
Campos
Reader |
Indica o IResourceReader usado para ler os recursos. (Herdado de ResourceSet) |
Table |
O Hashtable no qual os recursos são armazenados. (Herdado de ResourceSet) |
Métodos
Close() |
Fecha e libera recursos usados por este ResourceSet. (Herdado de ResourceSet) |
Dispose() |
Descarta os recursos (diferentes da memória) usados pela instância atual de ResourceSet. (Herdado de ResourceSet) |
Dispose(Boolean) |
Libera recursos (diferentes da memória) associados à instância atual, fechando objetos internos gerenciados, se solicitado. (Herdado de ResourceSet) |
Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
GetDefaultReader() |
Retorna a classe do leitor de recursos preferencial para esse tipo de ResXResourceSet. |
GetDefaultWriter() |
Retorna a classe do gravador de recursos preferencial para esse tipo de ResXResourceSet. |
GetEnumerator() |
Retorna um IDictionaryEnumerator que pode ser iterado por meio de ResourceSet. (Herdado de ResourceSet) |
GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
GetObject(String) |
Pesquisa um objeto do recurso com o nome especificado. (Herdado de ResourceSet) |
GetObject(String, Boolean) |
Pesquisa um objeto de recurso com o nome especificado, não diferenciando maiúsculas de minúsculas, se solicitado. (Herdado de ResourceSet) |
GetString(String) |
Pesquisa um recurso String com o nome especificado. (Herdado de ResourceSet) |
GetString(String, Boolean) |
Pesquisa um recurso String com o nome especificado, não diferenciando maiúsculas de minúsculas, se solicitado. (Herdado de ResourceSet) |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
ReadResources() |
Lê todos os recursos e os armazena em um Hashtable indicado na propriedade Table. (Herdado de ResourceSet) |
ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
Implantações explícitas de interface
IEnumerable.GetEnumerator() |
Retorna um objeto IEnumerator para evitar uma condição de corrida com |
Métodos de Extensão
Cast<TResult>(IEnumerable) |
Converte os elementos de um IEnumerable para o tipo especificado. |
OfType<TResult>(IEnumerable) |
Filtra os elementos de um IEnumerable com base em um tipo especificado. |
AsParallel(IEnumerable) |
Habilita a paralelização de uma consulta. |
AsQueryable(IEnumerable) |
Converte um IEnumerable em um IQueryable. |