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[]

このメソッドから制御が戻った時点で、取得した型のバイナリ表現であるバイト配列が格納されます。 このパラメーターは初期化せずに渡されます。

例外

resourceNamenullです。

resourceName は存在しません。

resourceName の型が無効です。

取得されたリソース データが壊れています。

現在の ResourceReader のオブジェクトは、おそらく閉じられたために初期化されません。

注釈

メソッドは GetResourceData 、名前付きリソースの値をバイト配列として取得します。 通常、このプロパティは、リソースの値を Value 取得しようとしたときに例外をスローするときに使用されます。

resourceType は、リソースのデータ型を表す文字列です。 次のいずれかの値を指定できます。

  • リソースのデータ型を ResourceTypeCode 示す列挙メンバーの文字列表現。 ResourceTypeCode は、19 個の一般的なデータ型のいずれかを格納するために特別なバイナリ形式が使用されることを示すために、 によって使用されるプライベート列挙です。 これには、.NET Frameworkプリミティブ データ型 (BooleanDateTimeInt32Int16Int64DoubleSingleDecimalUInt32TimeSpanCharByteUInt16UInt64SByteString)、 が含まれます。さらに、ResourceTypeCode列挙には次の表に示す値が含まれます。

    ResourceTypeCode 値 [説明]
    ResourceTypeCode.ByteArray データはバイト配列です。 このデータ型は、通常、 メソッドの呼び出し ResourceWriter.AddResource(String, Byte[]) によって得られます。
    ResourceTypeCode.Null データは null 参照です。 このデータ型は、通常、値が である オブジェクトを使用して メソッドを ResourceWriter.AddResource(String, Object) 呼び出した結果です null
    ResourceTypeCode.Stream データはストリームに格納されます。 このデータ型は、通常、 メソッドまたは ResourceWriter.AddResource(String, Stream, Boolean) メソッドのResourceWriter.AddResource(String, Stream)呼び出しによって得られます。

    resourceData破損していないと仮定すると、通常、 メソッドまたは BinaryReader メソッドを呼び出BitConverterすことで、バイト配列から元の値に変換できます。

  • シリアル化されたデータが引数に割り当てられている resourceData 型の完全修飾名を含む文字列 (例: System.String)。 さらに、.NET クラス ライブラリに含まれていない型の場合、文字列には、型を含むアセンブリの名前、バージョン、カルチャ、公開キーが含まれます。 たとえば、次の文字列は、シリアル化されたデータが名前空間内Extensionsの型のPersonインスタンスを表していることを示します。これは、公開キーがなく、カルチャが指定されていない Utility という名前のアセンブリのバージョン 1.0 にあります。

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

  • メソッド呼び出しでデータ型を記述するために使用される ResourceWriter.AddResourceData 文字列。

適用対象

こちらもご覧ください