ResourceReader Konstruktory
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í.
Inicializuje novou instanci ResourceReader třídy .
Přetížení
ResourceReader(Stream) |
Inicializuje novou instanci ResourceReader třídy pro zadaný datový proud. |
ResourceReader(String) |
Inicializuje novou instanci ResourceReader třídy pro zadaný pojmenovaný soubor prostředků. |
Poznámky
> [! DŮLEŽITÉ] > Použití instance tohoto objektu s nedůvěryhodnými daty představuje bezpečnostní riziko. Tento objekt používejte pouze s důvěryhodnými daty. Další informace najdete v tématu Ověření všech vstupů.
ResourceReader(Stream)
- Zdroj:
- ResourceReader.cs
- Zdroj:
- ResourceReader.cs
- Zdroj:
- ResourceReader.cs
Inicializuje novou instanci ResourceReader třídy pro zadaný datový proud.
public:
ResourceReader(System::IO::Stream ^ stream);
public ResourceReader (System.IO.Stream stream);
[System.Security.SecurityCritical]
public ResourceReader (System.IO.Stream stream);
new System.Resources.ResourceReader : System.IO.Stream -> System.Resources.ResourceReader
[<System.Security.SecurityCritical>]
new System.Resources.ResourceReader : System.IO.Stream -> System.Resources.ResourceReader
Public Sub New (stream As Stream)
Parametry
- stream
- Stream
Vstupní stream pro čtení prostředků.
- Atributy
Výjimky
Parametr stream
není čitelný.
Parametr stream
je null
.
Při přístupu došlo k vstupně-výstupní stream
chybě.
Příklady
Příklad v této části používá následující .txt soubor s názvem PatientForm.txt
k definování prostředků používaných aplikací.
Title="Top Pet Animal Clinic"
Label1="Patient Number:"
Label2="Pet Name:"
Label3="Species:"
Label4="Breed:"
Label5="Date of Birth:"
Label6="Age:"
Label7="Owner:"
Label8="Address:"
Label9="Home Phone:"
Label10="Work Phone:"
Label11="Mobile Phone:"
Soubor .txt můžete zkompilovat do souboru .resources spuštěním následujícího příkazu:
resgen PatientForm.txt
Následující příklad předpokládá, že soubor prostředků je vložen v sestavení, které obsahuje spustitelný kód aplikace. Načte soubor prostředků s názvem PatientForm.resources
z aktuálně spuštěných sestavení a zobrazí název a hodnotu každého z jeho prostředků.
using System;
using System.Collections;
using System.IO;
using System.Reflection;
using System.Resources;
public class Example
{
public static void Main()
{
var assem = typeof(Example).Assembly;
var fs = assem.GetManifestResourceStream("PatientForm.resources");
var rr = new ResourceReader(fs);
IDictionaryEnumerator dict = rr.GetEnumerator();
int ctr = 0;
while (dict.MoveNext()) {
ctr++;
Console.WriteLine("{0:00}: {1} = {2}", ctr, dict.Key, dict.Value);
}
rr.Close();
}
}
// The example displays the following output:
// 01: Label3 = "Species:"
// 02: Label2 = "Pet Name:"
// 03: Label1 = "Patient Number:"
// 04: Label7 = "Owner:"
// 05: Label6 = "Age:"
// 06: Label5 = "Date of Birth:"
// 07: Label4 = "Breed:"
// 08: Label9 = "Home Phone:"
// 09: Label8 = "Address:"
// 10: Title = "Top Pet Animal Clinic"
// 11: Label10 = "Work Phone:"
// 12: Label11 = "Mobile Phone:"
Imports System.Collections
Imports System.IO
Imports System.Reflection
Imports System.Resources
Module Example
Public Sub Main()
Dim assem As Assembly = GetType(Example).Assembly
Dim fs As Stream = assem.GetManifestResourceStream("PatientForm.resources")
Dim rr As New ResourceReader(fs)
Dim dict As IDictionaryEnumerator = rr.GetEnumerator
Dim ctr As Integer
Do While dict.MoveNext()
ctr += 1
Console.WriteLine("{0:00}: {1} = {2}", ctr, dict.Key, dict.Value)
Loop
rr.Close()
End Sub
End Module
' The example displays the following output:
' 01: Label3 = "Species:"
' 02: Label2 = "Pet Name:"
' 03: Label1 = "Patient Number:"
' 04: Label7 = "Owner:"
' 05: Label6 = "Age:"
' 06: Label5 = "Date of Birth:"
' 07: Label4 = "Breed:"
' 08: Label9 = "Home Phone:"
' 09: Label8 = "Address:"
' 10: Title = "Top Pet Animal Clinic"
' 11: Label10 = "Work Phone:"
' 12: Label11 = "Mobile Phone:"
Pokud má příklad jazyka C# název Example.cs
, můžete ho zkompilovat pomocí následujícího příkazu:
csc Example.cs /res:PatientForm.resources
Pokud má příklad jazyka Visual Basic název Example.vb
, můžete ho zkompilovat pomocí následujícího příkazu:
vbc Example.vb /res:PatientForm.resources
Poznámky
Konstruktor ResourceReader(Stream) vytvoří instanci objektu ResourceReader , který načte prostředky buď ze samostatného souboru .resources, nebo ze souboru .resources, který je vložen v sestavení. Chcete-li číst ze samostatného souboru .resources, vytvořte instanci objektu Stream a předejte jej konstruktoru ResourceReader(Stream) . Chcete-li číst z vloženého souboru .resources, zavolejte metodu Assembly.GetManifestResourceStream s názvem souboru .resources rozlišujícím malá a velká písmena a předejte vrácený Stream objekt konstruktoru ResourceReader(Stream) .
Důležité
Použití instance tohoto objektu s nedůvěryhodnými daty představuje bezpečnostní riziko. Tento objekt používejte pouze s důvěryhodnými daty. Další informace najdete v tématu Ověření všech vstupů.
Viz také
Platí pro
ResourceReader(String)
- Zdroj:
- ResourceReader.cs
- Zdroj:
- ResourceReader.cs
- Zdroj:
- ResourceReader.cs
Inicializuje novou instanci ResourceReader třídy pro zadaný pojmenovaný soubor prostředků.
public:
ResourceReader(System::String ^ fileName);
public ResourceReader (string fileName);
new System.Resources.ResourceReader : string -> System.Resources.ResourceReader
Public Sub New (fileName As String)
Parametry
- fileName
- String
Cesta a název souboru prostředků, který se má přečíst. filename
nerozlišuje velká a malá písmena.
Výjimky
Parametr fileName
je null
.
Soubor nebyl nalezen.
Došlo k vstupně-výstupní chybě.
Soubor prostředků má neplatný formát. Například délka souboru může být nula.
Příklady
Příklad v této části používá následující .txt soubor s názvem PatientForm.txt
k definování prostředků používaných aplikací.
Title="Top Pet Animal Clinic"
Label1="Patient Number:"
Label2="Pet Name:"
Label3="Species:"
Label4="Breed:"
Label5="Date of Birth:"
Label6="Age:"
Label7="Owner:"
Label8="Address:"
Label9="Home Phone:"
Label10="Work Phone:"
Label11="Mobile Phone:"
Tento .txt soubor můžete zkompilovat do souboru .resources spuštěním následujícího příkazu:
resgen PatientForm.txt
Následující příklad vytvoří výčet prostředků v PatientForm.resources
a zobrazí název a hodnotu každého z nich.
using System;
using System.Collections;
using System.Resources;
public class Example
{
public static void Main()
{
var rr = new ResourceReader("PatientForm.resources");
IDictionaryEnumerator dict = rr.GetEnumerator();
int ctr = 0;
while (dict.MoveNext()) {
ctr++;
Console.WriteLine("{0:00}: {1} = {2}", ctr, dict.Key, dict.Value);
}
rr.Close();
}
}
// The example displays the following output:
// 01: Label3 = "Species:"
// 02: Label2 = "Pet Name:"
// 03: Label1 = "Patient Number:"
// 04: Label7 = "Owner:"
// 05: Label6 = "Age:"
// 06: Label5 = "Date of Birth:"
// 07: Label4 = "Breed:"
// 08: Label9 = "Home Phone:"
// 09: Label8 = "Address:"
// 10: Title = "Top Pet Animal Clinic"
// 11: Label10 = "Work Phone:"
// 12: Label11 = "Mobile Phone:"
Imports System.Collections
Imports System.Resources
Module Example
Public Sub Main()
Dim rr As New ResourceReader("PatientForm.resources")
Dim dict As IDictionaryEnumerator = rr.GetEnumerator
Dim ctr As Integer
Do While dict.MoveNext()
ctr += 1
Console.WriteLine("{0:00}: {1} = {2}", ctr, dict.Key, dict.Value)
Loop
rr.Close()
End Sub
End Module
' The example displays the following output:
' 01: Label3 = "Species:"
' 02: Label2 = "Pet Name:"
' 03: Label1 = "Patient Number:"
' 04: Label7 = "Owner:"
' 05: Label6 = "Age:"
' 06: Label5 = "Date of Birth:"
' 07: Label4 = "Breed:"
' 08: Label9 = "Home Phone:"
' 09: Label8 = "Address:"
' 10: Title = "Top Pet Animal Clinic"
' 11: Label10 = "Work Phone:"
' 12: Label11 = "Mobile Phone:"
Poznámky
Konstruktor ResourceReader(String) vytvoří instanci objektu ResourceReader , který načte prostředky ze samostatného souboru .resources. Pokud chcete načíst prostředky z vloženého souboru .resources, použijte ResourceReader(Stream) konstruktor.
Důležité
Použití instance tohoto objektu s nedůvěryhodnými daty představuje bezpečnostní riziko. Tento objekt používejte pouze s důvěryhodnými daty. Další informace najdete v tématu Ověření všech vstupů.