ResourceReader.GetEnumerator Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Retourne un énumérateur pour cet objet ResourceReader.
public:
virtual System::Collections::IDictionaryEnumerator ^ GetEnumerator();
public:
System::Collections::IDictionaryEnumerator ^ GetEnumerator();
public System.Collections.IDictionaryEnumerator GetEnumerator ();
abstract member GetEnumerator : unit -> System.Collections.IDictionaryEnumerator
override this.GetEnumerator : unit -> System.Collections.IDictionaryEnumerator
member this.GetEnumerator : unit -> System.Collections.IDictionaryEnumerator
Public Function GetEnumerator () As IDictionaryEnumerator
Retours
Énumérateur pour cet objet ResourceReader.
Implémente
Exceptions
Le lecteur a été fermé ou supprimé, et il n'est plus possible d'y accéder.
Exemples
L’exemple de cette section utilise le fichier .txt suivant nommé PatientForm.txt
pour définir les ressources utilisées par une application.
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:"
Vous pouvez compiler le fichier .txt dans un fichier .resources en émettant la commande suivante :
resgen PatientForm.txt
L’exemple suivant énumère les ressources dans PatientForm.resources
et affiche le nom et la valeur de chacune d’elles.
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:"
Remarques
En règle générale, vous énumérez les ressources en appelant la GetEnumerator méthode, puis en appelant à plusieurs reprises la MoveNext méthode sur l’objet retourné IDictionaryEnumerator jusqu’à ce que la méthode retourne false
. Le nom de la ressource est disponible à partir de la IDictionaryEnumerator.Key propriété ; sa valeur à partir de la IDictionaryEnumerator.Value propriété . L’exemple montre comment énumérer les ressources de cette façon.
L’implémentation de la IDictionaryEnumerator.Value propriété par la ResourceReader classe peut lever les exceptions suivantes :
-
Impossible de trouver l’assembly qui contient le type auquel les données appartiennent.
-
Les données ne sont pas au format attendu.
-
Le type auquel les données appartiennent est introuvable.
Vous pouvez gérer l’exception en appelant la GetResourceData méthode pour récupérer des informations sur le type de données et le tableau d’octets affecté à la ressource nommée. Pour plus d’informations, consultez la section « Récupération de ressources par nom avec GetResourceData » dans la rubrique de classe ResourceReader .
Important
La ResourceReader classe inclut deux méthodes qui retournent des énumérateurs. La GetEnumerator méthode retourne un objet d’interface IDictionaryEnumerator et est la méthode recommandée à appeler lors de l’énumération des ressources.