Compartilhar via


ResourceReader.GetResourceData(String, String, Byte[]) Método

Definição

Recupera o nome do tipo e os dados de um recurso nomeado de um fluxo ou arquivo de recurso aberto.

public:
 void GetResourceData(System::String ^ resourceName, [Runtime::InteropServices::Out] System::String ^ % resourceType, [Runtime::InteropServices::Out] cli::array <System::Byte> ^ % resourceData);
public void GetResourceData(string resourceName, out string resourceType, out byte[] resourceData);
member this.GetResourceData : string * string * Byte[] -> unit
Public Sub GetResourceData (resourceName As String, ByRef resourceType As String, ByRef resourceData As Byte())

Parâmetros

resourceName
String

O nome de um recurso.

resourceType
String

Quando esse método é retornado, contém uma cadeia de caracteres que representa o nome do tipo do recurso recuperado. Este parâmetro é passado não inicializado.

resourceData
Byte[]

Quando esse método é retornado, contém uma matriz de bytes que é a representação binária do tipo recuperado. Este parâmetro é passado não inicializado.

Exceções

resourceName é null.

resourceName não existe.

resourceName tem um tipo inválido.

Os dados de recurso recuperados estão corrompidos.

O objeto atual ResourceReader não é inicializado, provavelmente porque está fechado.

Comentários

O GetResourceData método recupera o valor de um recurso nomeado como uma matriz de bytes. Normalmente, ela é usada quando a Value propriedade gera uma exceção quando tenta recuperar o valor de um recurso.

resourceType é uma cadeia de caracteres que representa o tipo de dados do recurso. Pode ser qualquer um dos seguintes valores:

  • A representação de cadeia de caracteres de um ResourceTypeCode membro de enumeração que indica o tipo de dados do recurso. ResourceTypeCode é uma enumeração privada usada por .para indicar que um formato binário especial é usado para armazenar um dos 19 tipos de dados comuns. Eles incluem os tipos de dados primitivos do .NET Framework (Boolean, Byte, Char, Decimal, Double, Int16, Int32, Int64, Single, SByte, UInt16, UInt32, UInt64), bem como String, DateTimee TimeSpan, Além disso, a ResourceTypeCode enumeração inclui os valores mostrados na tabela a seguir.

    Valor de ResourceTypeCode Descrição
    ResourceTypeCode.ByteArray Os dados são uma matriz de bytes. Esse tipo de dados geralmente resulta da chamada para o ResourceWriter.AddResource(String, Byte[]) método.
    ResourceTypeCode.Null Os dados são uma referência nula. Esse tipo de dados geralmente resulta da chamada para o ResourceWriter.AddResource(String, Object) método com um objeto cujo valor é null.
    ResourceTypeCode.Stream Os dados são armazenados em um fluxo. Esse tipo de dados geralmente resulta da chamada para o método ou ResourceWriter.AddResource(String, Stream, Boolean) para o ResourceWriter.AddResource(String, Stream) método.

    Supondo que resourceData não tenha sido corrompido, ele geralmente pode ser convertido de uma matriz de bytes de volta ao seu valor original chamando um método ou BinaryReader um BitConverter método.

  • Uma cadeia de caracteres que contém o nome totalmente qualificado do tipo cujos dados serializados são atribuídos ao resourceData argumento (por exemplo, System.String). Além disso, para tipos que não fazem parte da biblioteca de classes do .NET, a cadeia de caracteres inclui o nome, a versão, a cultura e a chave pública do assembly que contém o tipo. Por exemplo, a cadeia de caracteres a seguir indica que os dados serializados representam uma instância do Person tipo no Extensions namespace, que é encontrado na versão 1.0 de um assembly chamado Utilitário que não tem nenhuma chave pública e nenhuma cultura designada.

    Extensions.Person, Utility, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null

  • A cadeia de caracteres usada para descrever o tipo de dados na chamada de ResourceWriter.AddResourceData método.

Aplica-se a

Confira também