ResourceReader Costruttori

Definizione

Inizializza una nuova istanza della classe ResourceReader.

Overload

ResourceReader(Stream)

Inizializza una nuova istanza della classe ResourceReader per il flusso specificato.

ResourceReader(String)

Inizializza una nuova istanza della classe ResourceReader per il file di risorse denominato specificato.

Commenti

> [! IMPORTANTE] > L'uso di un'istanza di questo oggetto con dati non attendibili è un rischio per la sicurezza. Usare questo oggetto solo con dati attendibili. Per altre informazioni, vedere Validate All Inputs..

ResourceReader(Stream)

Origine:
ResourceReader.cs
Origine:
ResourceReader.cs
Origine:
ResourceReader.cs

Inizializza una nuova istanza della classe ResourceReader per il flusso specificato.

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)

Parametri

stream
Stream

Il flusso di input per la lettura delle risorse.

Attributi

Eccezioni

Il parametro stream non è leggibile.

Il valore del parametro stream è null.

Si è verificato un errore di I/O durante l'accesso al parametro stream.

Esempio

Nell'esempio riportato in questa sezione viene usato il file di .txt seguente denominato PatientForm.txt per definire le risorse usate da un'applicazione.

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:"

È possibile compilare il file .txt in un file con estensione resources eseguendo il comando seguente:

resgen PatientForm.txt

Nell'esempio seguente si presuppone che il file di risorse sia incorporato nell'assembly che contiene il codice eseguibile dell'applicazione. Recupera un file di risorse denominato PatientForm.resources dagli assembly attualmente in esecuzione e visualizza il nome e il valore di ognuna delle relative risorse.

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:"

Se l'esempio C# è denominato Example.cs, è possibile compilarlo usando il comando seguente:

csc Example.cs /res:PatientForm.resources

Se l'esempio di Visual Basic è denominato Example.vb, è possibile compilarlo usando il comando seguente:

vbc Example.vb /res:PatientForm.resources

Commenti

Il ResourceReader(Stream) costruttore crea un'istanza di un ResourceReader oggetto che recupera le risorse da un file con estensione resources autonomo o da un file con estensione resources incorporato in un assembly. Per leggere da un file con estensione resources autonomo, creare un'istanza di un Stream oggetto e passarlo al ResourceReader(Stream) costruttore. Per leggere da un file con estensione resources incorporato, chiamare il Assembly.GetManifestResourceStream metodo con il nome con distinzione tra maiuscole e minuscole del file resources e passare l'oggetto restituito Stream al ResourceReader(Stream) costruttore.

Importante

L'utilizzo di un'istanza di tale oggetto con i dati non attendibili implica un rischio per la sicurezza. Usare questo oggetto solo con dati attendibili. Per altre informazioni, vedere Convalidare tutti gli input.

Vedi anche

Si applica a

ResourceReader(String)

Origine:
ResourceReader.cs
Origine:
ResourceReader.cs
Origine:
ResourceReader.cs

Inizializza una nuova istanza della classe ResourceReader per il file di risorse denominato specificato.

public:
 ResourceReader(System::String ^ fileName);
public ResourceReader (string fileName);
new System.Resources.ResourceReader : string -> System.Resources.ResourceReader
Public Sub New (fileName As String)

Parametri

fileName
String

Percorso e nome del file di risorse da leggere. Per filename non viene effettuata la distinzione tra maiuscole e minuscole.

Eccezioni

Il valore del parametro fileName è null.

Impossibile trovare il file.

Si è verificato un errore di I/O.

Il formato del file di risorse non è valido. Ad esempio, la lunghezza del file potrebbe essere zero.

Esempio

Nell'esempio riportato in questa sezione viene usato il file di .txt seguente denominato PatientForm.txt per definire le risorse usate da un'applicazione.

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:"

È possibile compilare questo file .txt in un file con estensione resources eseguendo il comando seguente:

resgen PatientForm.txt

Nell'esempio seguente vengono enumerate le risorse in PatientForm.resources e viene visualizzato il nome e il valore di ognuno di essi.

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:"

Commenti

Il ResourceReader(String) costruttore crea un'istanza di un ResourceReader oggetto che recupera le risorse da un file con estensione resources autonomo. Per recuperare le risorse da un file con estensione resources incorporato, usare il ResourceReader(Stream) costruttore .

Importante

L'utilizzo di un'istanza di tale oggetto con i dati non attendibili implica un rischio per la sicurezza. Usare questo oggetto solo con dati attendibili. Per altre informazioni, vedere Convalidare tutti gli input.

Si applica a