Recursos no. resx Formatar do arquivo
O recurso. resx Formatar do arquivo consiste em entradas XML, que especificam objetos e as Cadeias de caracteres dentro de Rótulos XML. Uma vantagem de um. Arquivo Resx é que quando aberto em um editor de textos (sistema autônomo o bloco de notas ou o Palavra Pacote Microsoft Office 2010) ele pode ser gravado, analisado e manipulado. Ao visualizar um. Arquivo Resx, você pode realmente ver o formato binário de um objeto incorporado (uma imagem por exemplo) quando essa informação binária é uma parte do manifesto do recurso. Além dessa informação binária, um. Arquivo Resx é completamente legível e fácil de manter.
Dica
Não use o arquivo de recursos para guardar senhas, informações sigilosas ou dados particulares.
A. Arquivo Resx contém um conjunto padrão de Informação de cabeçalho, que descreve o Formatar das entradas do recurso e especifica as Informação de controle de versão para o XML usado para analisar os dados. O exemplo a seguir mostra que um conjunto comum de instruções de cabeçalho em um. Arquivo Resx pode parecer.
<?xml version="1.0" encoding="utf-8"?>
<root>
<xsd:schema id="root" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0"
msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
</xsd:complexType>
</xsd:element>
Após sistema autônomo Informação de cabeçalho de cada entrada é descrita sistema autônomo um emparelhar nome/valor, muito semelhante à maneira em que sistema autônomo Cadeias de caracteres são especificadas em um arquivo. txt. Um emparelhar nome/valor no Formatar. resx é encapsulado em código XML que descreve os valores de sequência ou objeto. Quando uma sequência é adicionada a um. Arquivo Resx, o nome Dados sequência é incorporado em uma marca de <Dados> e o valor está contido em uma marca <value> , sistema autônomo no exemplo a seguir.
<data name="string1">
<value>hello</value>
</data>
Quando um objeto é inserido em um. Arquivo Resx, o mesmo <Dados> e Rótulos de <valor> são usadas para descrever a entrada, mas a marca de <Dados> inclui um tipo ou o especificador de tipo MIME. O especificador de tipo contém o tipo de dados do objeto sendo salvo. O especificador de tipo MIME contém Tipo Base (Base64) das Informação do Binário armazenados, se o objeto consiste em Dados Binário.
Dica
Todas arquivos. resx, Usar um formatador de serialização binária para gerar e analisar os dados Binário para um tipo especificado.sistema autônomo resultado, um. Arquivo Resx podem se tornar inválido se o Formatar de serialização binária de um objeto for alterado de modo incompatível.
O exemplo a seguir mostra um objeto de Int32 salvo em um. Arquivo Resx e o início de um objeto de bitmap, que contém as Informação binárias de um arquivo. gif real.
<data name="i1" type="System.Int32, mscorlib">
<value>20</value>
</data>
<data name="flag" type="System.Drawing.Bitmap, System.Drawing,
Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAADtTeX…
</value>
</data>
Usando a classe ResXResourceWriter
Você pode usar o ResXResourceWriterclasse para criar um arquivo. resx diretamente De código. O exemplo a seguir ilustra sistema autônomo criar um. Arquivo Resx que armazena um arquivo. jpg sistema autônomo um dos recursos dentro do arquivo. Primeiro, Criar a imagem usando o método Image.FromFile . Em seguida, crie um ResXResourceWriter com um nome de arquivo exclusivo. Do método ResXResourceWriter.AddResource para cada imagem Adicionar a o arquivo de chamada. Por fim, chame o método ResXResourceWriter.Close para gravar as Informação da imagem para o arquivo de recurso e fechar o ResXResourceWriter .
Imports System
Imports System.Drawing
Imports System.Resources
Public Class SampleClass
Public Sub Main()
Dim img As Image
Dim rsxw As ResXResourceWriter
img = Image.FromFile("en-AU.jpg")
rsxw = new ResXResourceWriter("en-AU.resx")
rsxw.AddResource("en-AU.jpg",img)
rsxw.Close()
End Sub
End Class
using System;
using System.Drawing;
using System.Resources;
public class SampleClass
{
public static void Main()
{
Image img = Image.FromFile("en-AU.jpg");
ResXResourceWriter rsxw = new ResXResourceWriter("en-AU.resx");
rsxw.AddResource("en-AU.jpg",img);
rsxw.Close();
}
}
Você também pode manipular um. Arquivo Resx diretamente. No entanto, para evitar o corrompimento do arquivo, tenha cuidado para não modifique as Informação binárias, que são armazenadas no arquivo.
Se você precisa para recuperar os nomes e valores dos recursos em um. Arquivo Resx, Usar um ResXResourceReader. Para obter um exemplo de código que demonstra como criar um do ResXResourceReader para um arquivo especificado, iterar por meio do arquivo e imprime os nomes e valores de recursos, consulte a Classe ResXResourceReader .
Você não pode incorporar um. Arquivo Resx em tempo de execução um executável ou compilá-lo em um asssembly satélite. Você deve converter seu arquivo. resx em um. Arquivo de Recurso usando o Recurso File Gerador (Resgen. exe) . Para obter mais Informação, consulte do RECURSOS in .RECURSOS Formatar de arquivo.
Consulte também
Referência
Resgen. exe (Recurso Arquivo Gerador)