ResourceReader.GetResourceData(String, String, Byte[]) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Načte název typu a data pojmenovaného prostředku z otevřeného souboru prostředků nebo datového proudu.
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())
Parametry
- resourceName
- String
Název prostředku.
- resourceType
- String
Když tato metoda vrátí, obsahuje řetězec, který představuje název typu načteného prostředku. Tento parametr se předává neinicializovaný.
- resourceData
- Byte[]
Když tato metoda vrátí, obsahuje pole bajtů, které je binární reprezentací načteného typu. Tento parametr se předává neinicializovaný.
Výjimky
resourceName je null.
resourceName Neexistuje.
resourceName má neplatný typ.
Načtená data prostředků jsou poškozená.
Aktuální ResourceReader objekt není inicializován, pravděpodobně proto, že je zavřený.
Poznámky
Metoda GetResourceData načte hodnotu pojmenovaného prostředku jako pole bajtů. Obvykle se používá, když Value vlastnost vyvolá výjimku při pokusu o načtení hodnoty prostředku.
resourceType je řetězec, který představuje datový typ prostředku. Může to být libovolná z následujících hodnot:
Řetězcové vyjádření člena
ResourceTypeCodevýčtu, který označuje datový typ prostředku.ResourceTypeCodeje privátní výčet, který je používán .k označení, že speciální binární formát se používá k uložení jednoho z 19 běžných datových typů. Patří mezi ně primitivní datové typy rozhraní .NET Framework (Boolean, Byte, , DecimalChar, Double, Int16, Int32, Int64, SByteUInt64UInt32UInt16Single), a TimeSpanString, DateTimeNavícResourceTypeCodevýčet obsahuje hodnoty uvedené v následující tabulce.Hodnota ResourceTypeCode Description ResourceTypeCode.ByteArrayData jsou bajtové pole. Tento datový typ je obvykle výsledkem volání ResourceWriter.AddResource(String, Byte[]) metody . ResourceTypeCode.NullData mají nulový odkaz. Tento datový typ je obvykle výsledkem volání ResourceWriter.AddResource(String, Object) metody s objektem, jehož hodnota je null.ResourceTypeCode.StreamData jsou uložená v datovém proudu. Tento datový typ obvykle vyplývá z volání ResourceWriter.AddResource(String, Stream) metody nebo ResourceWriter.AddResource(String, Stream, Boolean) . Za předpokladu, že
resourceDatanebyla poškozena, lze obvykle převést z pole bajtů zpět na jeho původní hodnotu voláním BitConverter metody nebo BinaryReader .Řetězec, který obsahuje plně kvalifikovaný název typu, jehož serializovaná data jsou přiřazena argumentu
resourceData(napříkladSystem.String). Kromě toho pro typy, které nejsou součástí knihovny tříd .NET, řetězec obsahuje název, verzi, jazykovou verzi a veřejný klíč sestavení, které obsahuje typ. Například následující řetězec označuje, že serializovaná data představují instanciPersontypu vExtensionsoboru názvů, který se nachází ve verzi 1.0 sestavení s názvem Utility, které nemá žádný veřejný klíč a žádnou určenou jazykovou verzi.Extensions.Person, Utility, Version=1.0.0.0, Culture=neutral, PublicKeyToken=nullŘetězec použitý k popisu datového typu ve ResourceWriter.AddResourceData volání metody.