ResXResourceWriter Класс

Определение

Записывает ресурсы в файл ресурсов XML (.resx) или в выходной поток.Writes resources in an XML resource (.resx) file or an output stream.

public ref class ResXResourceWriter : IDisposable, System::Resources::IResourceWriter
public ref class ResXResourceWriter : System::Resources::IResourceWriter
public class ResXResourceWriter : IDisposable, System.Resources.IResourceWriter
public class ResXResourceWriter : System.Resources.IResourceWriter
type ResXResourceWriter = class
    interface IResourceWriter
    interface IDisposable
Public Class ResXResourceWriter
Implements IDisposable, IResourceWriter
Public Class ResXResourceWriter
Implements IResourceWriter
Наследование
ResXResourceWriter
Реализации

Примеры

В следующем примере создается RESX-файл с именем CarResources.resx , в котором хранятся шесть строк, значок и два определяемых приложением объекта (два Automobile объекта).The following example creates a .resx file named CarResources.resx that stores six strings, an icon, and two application-defined objects (two Automobile objects). Обратите внимание, что класс Automobile, определенный и созданный в этом примере, отмечен атрибутом SerializableAttribute.Note that the Automobile class, which is defined and instantiated in the example, is tagged with the SerializableAttribute attribute.

using System;
using System.Drawing;
using System.Resources;

[Serializable()] public class Automobile
{
   private string carMake;
   private string carModel;
   private int carYear;
   private int carDoors;
   private int carCylinders;

   public Automobile(string make, string model, int year) :
                     this(make, model, year, 0, 0)
   { }

   public Automobile(string make, string model, int year,
                     int doors, int cylinders)
   {
      this.carMake = make;
      this.carModel = model;
      this.carYear = year;
      this.carDoors = doors;
      this.carCylinders = cylinders;
   }

   public string Make {
      get { return this.carMake; }
   }

   public string Model {
      get {return this.carModel; }
   }

   public int Year {
      get { return this.carYear; }
   }

   public int Doors {
      get { return this.carDoors; }
   }

   public int Cylinders {
      get { return this.carCylinders; }
   }
}

public class Example
{
   public static void Main()
   {
      // Instantiate an Automobile object.
      Automobile car1 = new Automobile("Ford", "Model N", 1906, 0, 4);
      Automobile car2 = new Automobile("Ford", "Model T", 1909, 2, 4);
      // Define a resource file named CarResources.resx.
      using (ResXResourceWriter resx = new ResXResourceWriter(@".\CarResources.resx"))
      {
         resx.AddResource("Title", "Classic American Cars");
         resx.AddResource("HeaderString1", "Make");
         resx.AddResource("HeaderString2", "Model");
         resx.AddResource("HeaderString3", "Year");
         resx.AddResource("HeaderString4", "Doors");
         resx.AddResource("HeaderString5", "Cylinders");
         resx.AddResource("Information", SystemIcons.Information);
         resx.AddResource("EarlyAuto1", car1);
         resx.AddResource("EarlyAuto2", car2);
      }
   }
}
Imports System.Drawing
Imports System.Resources

<Serializable()> Public Class Automobile
   Private carMake As String
   Private carModel As String
   Private carYear As Integer
   Private carDoors AS Integer
   Private carCylinders As Integer
   
   Public Sub New(make As String, model As String, year As Integer) 
      Me.New(make, model, year, 0, 0)   
   End Sub
   
   Public Sub New(make As String, model As String, year As Integer, 
                  doors As Integer, cylinders As Integer)
      Me.carMake = make
      Me.carModel = model
      Me.carYear = year
      Me.carDoors = doors
      Me.carCylinders = cylinders
   End Sub

   Public ReadOnly Property Make As String
      Get
         Return Me.carMake
      End Get   
   End Property       
   
   Public ReadOnly Property Model As String
      Get
         Return Me.carModel
      End Get   
   End Property       
   
   Public ReadOnly Property Year As Integer
      Get
         Return Me.carYear
      End Get   
   End Property       
   
   Public ReadOnly Property Doors As Integer
      Get
         Return Me.carDoors
      End Get   
   End Property       
   
   Public ReadOnly Property Cylinders As Integer
      Get
         Return Me.carCylinders
      End Get   
   End Property       
End Class

Module Example
   Public Sub Main()
      ' Instantiate an Automobile object.
      Dim car1 As New Automobile("Ford", "Model N", 1906, 0, 4)
      Dim car2 As New Automobile("Ford", "Model T", 1909, 2, 4)
      ' Define a resource file named CarResources.resx.
      Using resx As New ResXResourceWriter(".\CarResources.resx")
         resx.AddResource("Title", "Classic American Cars")
         resx.AddResource("HeaderString1", "Make")
         resx.AddResource("HeaderString2", "Model")
         resx.AddResource("HeaderString3", "Year")
         resx.AddResource("HeaderString4", "Doors")
         resx.AddResource("HeaderString5", "Cylinders")
         resx.AddResource("Information", SystemIcons.Information) 
         resx.AddResource("EarlyAuto1", car1)
         resx.AddResource("EarlyAuto2", car2)  
      End Using
   End Sub
End Module

Комментарии

ResXResourceWriterЗаписывает ресурсы в формате XML.The ResXResourceWriter writes resources in XML format. Чтобы записать двоичный файл ресурсов, используйте ResourceWriter .To write a binary resource file, use ResourceWriter.

Ресурсы указываются в виде пар имя-значение с помощью AddResource метода.Resources are specified as name/value pairs using the AddResource method. В именах ресурсов учитывается регистр при использовании для уточняющих запросов. но для упрощения поддержки средств разработки и устранения ошибок не ResXResourceWriter допускает, чтобы RESX-файл имел имена, отличающиеся только регистром.Resource names are case-sensitive when used for lookups; but to more easily support authoring tools and help eliminate bugs, ResXResourceWriter does not allow a.resx file to have names that vary only by case.

Чтобы создать RESX-файл, создайте ResXResourceWriter с уникальным именем файла, вызовите AddResource по крайней мере один раз, вызовите, Generate чтобы записать файл ресурсов на диск, а затем вызовите, Close чтобы закрыть файл.To create a.resx file, create a ResXResourceWriter with a unique file name, call AddResource at least once, call Generate to write the resources file to disk, and then call Close to close the file. CloseПри необходимости вызов будет неявно иметь Generate файл.Calling Close will implicitly Generate the file if required.

Ресурсы не обязательно записываются в том же порядке, в котором они были добавлены.The resources are not necessarily written in the same order they were added.

Дополнительные сведения о формате RESX-файла см. в разделе Работа с RESX-файлами программным способом.For more information on the format of a.resx file, see Working with .resx Files Programmatically.

Примечание

Этот класс содержит требования связывания и наследования на уровне класса, которые применяются ко всем элементам.This class contains a link demand and an inheritance demand at the class level that applies to all members. Если непосредственно вызывающий оператор или производный класс не имеет разрешения полного доверия, возникает исключение SecurityException.A SecurityException is thrown when either the immediate caller or the derived class does not have full-trust permission.

Конструкторы

ResXResourceWriter(Stream)

Инициализирует новый экземпляр класса ResXResourceWriter, записывающего ресурсы в указанный объект потока.Initializes a new instance of the ResXResourceWriter class that writes the resources to the specified stream object.

ResXResourceWriter(Stream, Func<Type,String>)

Инициализирует новый экземпляр класса ResXResourceWriter, записывающего ресурсы в указанный объект потока и задающего делегат преобразователя.Initializes a new instance of the ResXResourceWriter class that writes the resources to a specified stream object and sets a converter delegate. Этот делегат позволяет записывать сборки ресурсов, предназначенные для .NET Framework до версии 4, с помощью полных имен сборок.This delegate enables resource assemblies to be written that target versions of the .NET Framework before .NET Framework 4 by using qualified assembly names.

ResXResourceWriter(String)

Инициализирует новый экземпляр класса ResXResourceWriter, который записывает ресурсы в указанный файл.Initializes a new instance of the ResXResourceWriter class that writes the resources to the specified file.

ResXResourceWriter(String, Func<Type,String>)

Инициализирует новый экземпляр класса ResXResourceWriter, записывающий ресурсы в указанный файл и задающий делегат, который позволяет записывать сборки ресурсов, предназначенные для .NET Framework до версии 4, с помощью полных имен сборок.Initializes a new instance of the ResXResourceWriter class that writes the resources to a specified file and sets a delegate that enables resource assemblies to be written that target versions of the .NET Framework before .NET Framework 4 by using qualified assembly names.

ResXResourceWriter(TextWriter)

Инициализирует новый экземпляр класса ResXResourceWriter, который производит запись в указанный объект TextWriter.Initializes a new instance of the ResXResourceWriter class that writes to the specified TextWriter object.

ResXResourceWriter(TextWriter, Func<Type,String>)

Инициализирует новый экземпляр класса ResXResourceWriter, записывающий ресурсы в указанный объект TextWriter и задающий делегат, который позволяет записывать сборки ресурсов, предназначенные для .NET Framework до версии 4, с помощью полных имен сборок.Initializes a new instance of the ResXResourceWriter class that writes the resources to a specified TextWriter object and sets a delegate that enables resource assemblies to be written that target versions of the .NET Framework before .NET Framework 4 by using qualified assembly names.

Поля

BinSerializedObjectMimeType

Задает тип содержимого по умолчанию для двоичного объекта.Specifies the default content type for a binary object. Это поле доступно только для чтения.This field is read-only.

ByteArraySerializedObjectMimeType

Задает тип содержимого по умолчанию для объекта массива байтов.Specifies the default content type for a byte array object. Это поле доступно только для чтения.This field is read-only.

DefaultSerializedObjectMimeType

Задает тип содержимого по умолчанию для объекта.Specifies the default content type for an object. Это поле доступно только для чтения.This field is read-only.

ResMimeType

Задает тип содержимого XML-ресурса.Specifies the content type of an XML resource. Это поле доступно только для чтения.This field is read-only.

ResourceSchema

Задает схему, используемую при записи XML-файла.Specifies the schema to use in writing the XML file. Это поле доступно только для чтения.This field is read-only.

SoapSerializedObjectMimeType

Задает тип содержимого для объекта SOAP.Specifies the content type for a SOAP object. Это поле доступно только для чтения.This field is read-only.

Version

Указывает версию схемы, которой соответствуют выходные XML-данные.Specifies the version of the schema that the XML output conforms to. Это поле доступно только для чтения.This field is read-only.

Свойства

BasePath

Возвращает или задает базовый путь для относительного пути к файлу, заданному в объекте ResXFileRef.Gets or sets the base path for the relative file path specified in a ResXFileRef object.

Методы

AddAlias(String, AssemblyName)

Добавляет указанный псевдоним в список псевдонимов.Adds the specified alias to a list of aliases.

AddMetadata(String, Byte[])

Добавляет свойства времени проектирования, значения которых указываются в виде массива байтов, в список ресурсов для записи.Adds a design-time property whose value is specified as a byte array to the list of resources to write.

AddMetadata(String, Object)

Добавляет свойство времени проектирования, значение которого указывается в виде объекта, в список ресурсов для записи.Adds a design-time property whose value is specified as an object to the list of resources to write.

AddMetadata(String, String)

Добавляет свойство времени проектирования, значение которого указывается в виде строки, в список ресурсов для записи.Adds a design-time property whose value is specified as a string to the list of resources to write.

AddResource(ResXDataNode)

Добавляет именованный ресурс, указанный в объекте ResXDataNode, в список ресурсов для записи.Adds a named resource specified in a ResXDataNode object to the list of resources to write.

AddResource(String, Byte[])

Добавляет именованный ресурс, заданный в виде массива байтов, в список ресурсов для записи.Adds a named resource specified as a byte array to the list of resources to write.

AddResource(String, Object)

Добавляет именованный ресурс, заданный в виде объекта, в список ресурсов для записи.Adds a named resource specified as an object to the list of resources to write.

AddResource(String, String)

Добавляет строковый ресурс к ресурсам.Adds a string resource to the resources.

Close()

Освобождает все ресурсы, занятые модулем ResXResourceWriter.Releases all resources used by the ResXResourceWriter.

Dispose()

Освобождает все ресурсы, занятые модулем ResXResourceWriter.Releases all resources used by the ResXResourceWriter.

Dispose(Boolean)

Освобождает неуправляемые ресурсы, используемые объектом ResXResourceWriter, а при необходимости освобождает также управляемые ресурсы.Releases the unmanaged resources used by the ResXResourceWriter and optionally releases the managed resources.

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.Determines whether the specified object is equal to the current object.

(Унаследовано от Object)
Finalize()

Этот член переопределяет метод Finalize().This member overrides the Finalize() method.

Generate()

Записывает все ресурсы, добавленные методом AddResource(String, Byte[]), в выходной файл или поток.Writes all resources added by the AddResource(String, Byte[]) method to the output file or stream.

GetHashCode()

Служит хэш-функцией по умолчанию.Serves as the default hash function.

(Унаследовано от Object)
GetType()

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

(Унаследовано от Object)
MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.Returns a string that represents the current object.

(Унаследовано от Object)

Применяется к