次の方法で共有


ResXResourceReader クラス

XML リソース (.resx) ファイルとストリームを列挙し、連続したリソース名とリソース値のペアを読み取ります。

名前空間: System.Resources
アセンブリ: System.Windows.Forms (system.windows.forms.dll 内)

構文

'宣言
Public Class ResXResourceReader
    Implements IResourceReader, IEnumerable, IDisposable
'使用
Dim instance As ResXResourceReader
public class ResXResourceReader : IResourceReader, IEnumerable, IDisposable
public ref class ResXResourceReader : IResourceReader, IEnumerable, IDisposable
public class ResXResourceReader implements IResourceReader, IEnumerable, 
    IDisposable
public class ResXResourceReader implements IResourceReader, IEnumerable, 
    IDisposable

解説

ResXResourceReader は、XML 形式でリソース情報を読み取る IResourceReader インターフェイスの既定の実装を提供します。バイナリ リソース形式でリソース情報を読み取るには、ResourceReader を使用します。

リソース リーダーを使用して、リソース名とリソース値のペアを .resx ファイルから読み取ることができます。リソースは、GetEnumerator メソッドが返す IDictionaryEnumerator を走査することによって列挙できます。IDictionaryEnumerator に用意されているメソッドを使用して、次のリソースに進んだり、.resx ファイルの各リソースの名前および値を読み取ることができます。

.resx ファイルの形式の詳細については、「.Resx ファイル形式のリソース」を参照してください。

注意

IEnumerable.GetEnumerator は、IDictionaryEnumerator ではなく IEnumerator を返します。

使用例

ResXResourceReader を使用して、.resx ファイル内のリソースを反復処理する方法の例を次に示します。まず、ファイル items.resxResXResourceReaderrsxr を作成します。次に、GetEnumerator メソッドで IDictionaryEnumerator を作成して、リソースを反復処理し、コンソールに内容を表示します。

Imports System
Imports System.Resources
Imports System.Collections
Imports Microsoft.VisualBasic

Class ReadResXResources
   
   Public Shared Sub Main()
      
      ' Create a ResXResourceReader for the file items.resx.
      Dim rsxr As ResXResourceReader
      rsxr = New ResXResourceReader("items.resx")

      ' Create an IDictionaryEnumerator to iterate through the resources.
      Dim id As IDictionaryEnumerator = rsxr.GetEnumerator()
            
      ' Iterate through the resources and display the contents to the console.
      Dim d As DictionaryEntry
      For Each d In  rsxr
         Console.WriteLine(d.Key.ToString() + ":" + ControlChars.Tab + d.Value.ToString())
      Next d
      
      'Close the reader.
      rsxr.Close()

   End Sub

End Class
using System;
using System.Resources;
using System.Collections;

class ReadResXResources
{
   public static void Main()
   {
   
      // Create a ResXResourceReader for the file items.resx.
      ResXResourceReader rsxr = new ResXResourceReader("items.resx");

      // Create an IDictionaryEnumerator to iterate through the resources.
      IDictionaryEnumerator id = rsxr.GetEnumerator();       

      // Iterate through the resources and display the contents to the console.
      foreach (DictionaryEntry d in rsxr) 
      {
    Console.WriteLine(d.Key.ToString() + ":\t" + d.Value.ToString());
      }

     //Close the reader.
     rsxr.Close();
   }
}
#using <system.windows.forms.dll>
#using <System.dll>

using namespace System;
using namespace System::Resources;
using namespace System::Collections;
void main()
{
   
   // Create a ResXResourceReader for the file items.resx.
   ResXResourceReader^ rsxr = gcnew ResXResourceReader( "items.resx" );
   
   // Create an IDictionaryEnumerator* to iterate through the resources.
   IDictionaryEnumerator^ id = rsxr->GetEnumerator();
   
   // Iterate through the resources and display the contents to the console.
   IEnumerator^ myEnum = rsxr->GetEnumerator();
   while ( myEnum->MoveNext() )
   {
      DictionaryEntry^ d = safe_cast<DictionaryEntry^>(myEnum->Current);
      Console::WriteLine( "{0}:\t {1}", d->Key, d->Value );
   }

   
   //Close the reader.
   rsxr->Close();
}

継承階層

System.Object
  System.Resources.ResXResourceReader

スレッド セーフ

この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。

プラットフォーム

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。

バージョン情報

.NET Framework

サポート対象 : 2.0、1.1、1.0

参照

関連項目

ResXResourceReader メンバ
System.Resources 名前空間

その他の技術情報

.Resx ファイル形式のリソース