ResourceReader.GetResourceData(String, String, Byte[]) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Извлекает имя типа и данные именованного ресурса из открытого файла ресурса или потока.
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())
Параметры
- resourceName
- String
Имя ресурса.
- resourceType
- String
При возврате этого метода содержит строку, представляющую имя типа извлеченного ресурса. Этот параметр передается без инициализации.
- resourceData
- Byte[]
При возврате этого метода содержит массив байтов, который является двоичным представлением полученного типа. Этот параметр передается без инициализации.
Исключения
resourceName равно null.
resourceName не существует.
resourceName имеет недопустимый тип.
Полученные данные ресурса повреждены.
Текущий ResourceReader объект не инициализирован, вероятно, потому что он закрыт.
Комментарии
Метод GetResourceData извлекает значение именованного ресурса в виде массива байтов. Обычно оно используется, когда Value свойство создает исключение при попытке получить значение ресурса.
resourceType — это строка, представляющая тип данных ресурса. В качестве такой точки может выступать любой из следующих вариантов:
Строковое представление
ResourceTypeCodeэлемента перечисления, указывающего тип данных ресурса.ResourceTypeCode— это частное перечисление, используемое .для указания того, что для хранения одного из 19 распространенных типов данных используется специальный двоичный формат. К ним относятся примитивные типы данных .NET Framework (Boolean, DecimalInt16DoubleCharInt32Int64SingleSByteUInt32ByteUInt64UInt16), а также DateTimeString, а TimeSpanтакже перечисление включает значения, показанные в следующей таблице.ResourceTypeCodeЗначение ResourceTypeCode Описание ResourceTypeCode.ByteArrayДанные — это массив байтов. Этот тип данных обычно приводит к вызову ResourceWriter.AddResource(String, Byte[]) метода. ResourceTypeCode.NullДанные являются пустой ссылкой. Этот тип данных обычно приводит к вызову ResourceWriter.AddResource(String, Object) метода с объектом, значение которого равно null.ResourceTypeCode.StreamДанные хранятся в потоке. Этот тип данных обычно приводит к вызову или ResourceWriter.AddResource(String, Stream, Boolean) методуResourceWriter.AddResource(String, Stream). Если это
resourceDataне повреждено, обычно его можно преобразовать из массива байтов обратно в исходное значение путем вызова BitConverter метода или BinaryReader метода.Строка, содержащая полное имя типа, сериализованные данные которого назначены аргументу
resourceData(например,System.String). Кроме того, для типов, не входящих в библиотеку классов .NET, строка включает имя, версию, язык и региональные параметры и открытый ключ сборки, содержащей тип. Например, следующая строка указывает, что сериализованные данные представляют экземплярPersonтипа вExtensionsпространстве имен, который найден в сборке с именем служебной программы версии 1.0, которая не имеет открытого ключа и языка и региональных параметров.Extensions.Person, Utility, Version=1.0.0.0, Culture=neutral, PublicKeyToken=nullСтрока, используемая для описания типа данных в вызове ResourceWriter.AddResourceData метода.