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

Definição

Recupera o nome do tipo e os dados de um recurso nomeado a partir de um ficheiro ou fluxo 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 este método retorna, contém uma cadeia que representa o nome do tipo do recurso recuperado. Este parâmetro é passado sem inicializar.

resourceData
Byte[]

Quando este método retorna, contém um array de bytes que é a representação binária do tipo recuperado. Este parâmetro é passado sem inicializar.

Exceções

resourceName é null.

resourceName não existe.

resourceName tem um tipo inválido.

Os dados de recursos recuperados estão corrompidos.

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

Observações

O GetResourceData método recupera o valor de um recurso nomeado como um array de bytes. É normalmente usado quando a Value propriedade lança uma exceção ao tentar recuperar o valor de um recurso.

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

  • A representação em cadeia de um ResourceTypeCode membro de enumeração que indica o tipo de dado 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. Estes 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, DateTime e TimeSpan, Além disso, a enumeração ResourceTypeCode inclui os valores apresentados na tabela seguinte.

    Valor ResourceTypeCode Description
    ResourceTypeCode.ByteArray Os dados são um array de bytes. Este tipo de dado resulta normalmente da chamada ao ResourceWriter.AddResource(String, Byte[]) método.
    ResourceTypeCode.Null Os dados são uma referência nula. Este tipo de dado resulta normalmente da chamada ao ResourceWriter.AddResource(String, Object) método com um objeto cujo valor é null.
    ResourceTypeCode.Stream Os dados são armazenados num fluxo. Este tipo de dado resulta normalmente da chamada para o ResourceWriter.AddResource(String, Stream) método ou ResourceWriter.AddResource(String, Stream, Boolean) .

    Assumindo que resourceData não foi corrompido, normalmente pode ser convertido de um array de bytes de volta ao seu valor original chamando um BitConverter método ou BinaryReader .

  • Uma cadeia 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 .NET, a cadeia inclui o nome, versão, cultura e chave pública do assembly que contém o tipo. Por exemplo, a cadeia seguinte indica que os dados serializados representam uma instância do Person tipo no Extensions namespace, que se encontra na versão 1.0 de uma assembly chamada Utility que não tem chave pública nem cultura designada.

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

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

Aplica-se a

Ver também