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 método ou GetObject para o GetString método, 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 dessa classe com dados não confiáveis é um risco à segurança. Chame os métodos dessa classe apenas com 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 que ResXResourceSet usam seu próprio leitor de recursos e gravador devem substituir os métodos e GetDefaultWriter() os GetDefaultReader() métodos para fornecer a funcionalidade apropriada para interpretar a ResXResourceSet instância.
Construtores
| Nome | Description |
|---|---|
| ResXResourceSet(Stream) |
Inicializa uma nova instância da ResXResourceSet classe usando o padrão ResXResourceReader do sistema 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
| Nome | Description |
|---|---|
| Reader |
Indica o IResourceReader usado para ler os recursos. (Herdado de ResourceSet) |
| Table |
O Hashtable local em que os recursos são armazenados. (Herdado de ResourceSet) |
Métodos
| Nome | Description |
|---|---|
| Close() |
Fecha e libera todos os recursos usados por isso ResourceSet. (Herdado de ResourceSet) |
| Dispose() |
Descarta os recursos (além da memória) usados pela instância atual de ResourceSet. (Herdado de ResourceSet) |
| Dispose(Boolean) |
Libera recursos (exceto memória) associados à instância atual, fechando objetos gerenciados internos, se solicitado. (Herdado de ResourceSet) |
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| GetDefaultReader() |
Retorna a classe de leitor de recurso preferencial para esse tipo de ResXResourceSet. |
| GetDefaultWriter() |
Retorna a classe de gravador de recursos preferencial para esse tipo de ResXResourceSet. |
| GetEnumerator() |
Retorna um IDictionaryEnumerator que pode iterar por meio do ResourceSet. (Herdado de ResourceSet) |
| GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
| GetObject(String, Boolean) |
Pesquisa um objeto de recurso com o nome especificado de maneira que não diferencia maiúsculas de minúsculas, se solicitado. (Herdado de ResourceSet) |
| GetObject(String) |
Pesquisa um objeto de recurso com o nome especificado. (Herdado de ResourceSet) |
| GetString(String, Boolean) |
Pesquisa um String recurso com o nome especificado de maneira que não diferencia maiúsculas de minúsculas, se solicitado. (Herdado de ResourceSet) |
| GetString(String) |
Pesquisa um String recurso com o nome especificado. (Herdado de ResourceSet) |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| MemberwiseClone() |
Cria uma cópia superficial do Objectatual. (Herdado de Object) |
| ReadResources() |
Lê todos os recursos e os armazena em um Hashtable indicado na Table propriedade. (Herdado de ResourceSet) |
| ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
Implantações explícitas de interface
| Nome | Description |
|---|---|
| IEnumerable.GetEnumerator() |
Retorna um IEnumerator objeto para evitar uma condição de corrida com |
Métodos de Extensão
| Nome | Description |
|---|---|
| AsParallel(IEnumerable) |
Habilita a paralelização de uma consulta. |
| AsQueryable(IEnumerable) |
Converte um IEnumerable em um IQueryable. |
| 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. |