ResXResourceWriter Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Skriver resurser i en XML-resursfil (.resx) eller en utdataström.
public ref class ResXResourceWriter : System::Resources::IResourceWriter
public class ResXResourceWriter : System.Resources.IResourceWriter
type ResXResourceWriter = class
interface IResourceWriter
interface IDisposable
Public Class ResXResourceWriter
Implements IResourceWriter
- Arv
-
ResXResourceWriter
- Implementeringar
Exempel
I följande exempel skapas en .resx-fil med namnet CarResources.resx som lagrar sex strängar, en ikon och två programdefinierade objekt (två Automobile objekt). Observera att Automobile klassen, som definieras och instansieras i exemplet, taggas med SerializableAttribute attributet .
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
Kommentarer
Skrivresurserna ResXResourceWriter i XML-format. Om du vill skriva en binär resursfil använder du ResourceWriter.
Resurser anges som namn/värdepar med hjälp av AddResource metoden . Resursnamn är skiftlägeskänsliga när de används för sökningar. men för att enklare stödja redigeringsverktyg och hjälpa till att eliminera buggar, ResXResourceWriter tillåter inte a.resx-filen att ha namn som endast varierar beroende på fall.
Om du vill skapa en.resx-fil skapar du en ResXResourceWriter med ett unikt filnamn, anropar AddResource minst en gång, anropar Generate för att skriva resursfilen till disken och anropar Close sedan för att stänga filen. Om det behövs anropas Close filen implicit Generate .
Resurserna skrivs inte nödvändigtvis i samma ordning som de lades till.
Mer information om formatet för en.resx-fil finns i Arbeta med .resx Files Programmatically.
Note
Den här klassen innehåller ett länkbehov och ett arvskrav på klassnivå som gäller för alla medlemmar. En SecurityException utlöses när antingen den omedelbara anroparen eller den härledda klassen inte har fullständig förtroendebehörighet.
Konstruktorer
| Name | Description |
|---|---|
| ResXResourceWriter(Stream, Func<Type,String>) |
Initierar en ny instans av ResXResourceWriter klassen som skriver resurserna till ett angivet dataströmobjekt och anger ett konverterardelegat. Med det här ombudet kan resurssammansättningar skrivas som målversioner av .NET Framework före .NET Framework 4 med hjälp av kvalificerade sammansättningsnamn. |
| ResXResourceWriter(Stream) |
Initierar en ny instans av ResXResourceWriter klassen som skriver resurserna till det angivna strömobjektet. |
| ResXResourceWriter(String, Func<Type,String>) |
Initierar en ny instans av klassen ResXResourceWriter som skriver resurserna till en angiven fil och anger ett ombud som gör att resurssammansättningar kan skrivas som målversioner av .NET Framework före .NET Framework 4 med hjälp av kvalificerade sammansättningsnamn. |
| ResXResourceWriter(String) |
Initierar en ny instans av ResXResourceWriter klassen som skriver resurserna till den angivna filen. |
| ResXResourceWriter(TextWriter, Func<Type,String>) |
Initierar en ny instans av klassen ResXResourceWriter som skriver resurserna till ett angivet TextWriter-objekt och anger ett ombud som gör det möjligt att skriva resurssammansättningar som målversioner av .NET Framework före .NET Framework 4 med hjälp av kvalificerade sammansättningsnamn. |
| ResXResourceWriter(TextWriter) |
Initierar en ny instans av ResXResourceWriter klassen som skriver till det angivna TextWriter objektet. |
Fält
| Name | Description |
|---|---|
| BinSerializedObjectMimeType |
Anger standardinnehållstypen för ett binärt objekt. Detta fält är skrivskyddat. |
| ByteArraySerializedObjectMimeType |
Anger standardinnehållstypen för ett bytematrisobjekt. Detta fält är skrivskyddat. |
| DefaultSerializedObjectMimeType |
Anger standardinnehållstypen för ett objekt. Detta fält är skrivskyddat. |
| ResMimeType |
Anger innehållstypen för en XML-resurs. Detta fält är skrivskyddat. |
| ResourceSchema |
Anger vilket schema som ska användas när XML-filen skrivs. Detta fält är skrivskyddat. |
| SoapSerializedObjectMimeType |
Anger innehållstypen för ett SOAP-objekt. Detta fält är skrivskyddat. |
| Version |
Anger vilken version av schemat som XML-utdata överensstämmer med. Detta fält är skrivskyddat. |
Egenskaper
| Name | Description |
|---|---|
| BasePath |
Hämtar eller anger bassökvägen för den relativa filsökväg som anges i ett ResXFileRef objekt. |
Metoder
| Name | Description |
|---|---|
| AddAlias(String, AssemblyName) |
Lägger till det angivna aliaset i en lista med alias. |
| AddMetadata(String, Byte[]) |
Lägger till en designtidsegenskap vars värde anges som en bytematris i listan över resurser som ska skrivas. |
| AddMetadata(String, Object) |
Lägger till en designtidsegenskap vars värde anges som ett objekt i listan över resurser som ska skrivas. |
| AddMetadata(String, String) |
Lägger till en designtidsegenskap vars värde anges som en sträng i listan över resurser som ska skrivas. |
| AddResource(ResXDataNode) |
Lägger till en namngiven resurs som anges i ett ResXDataNode objekt i listan över resurser som ska skrivas. |
| AddResource(String, Byte[]) |
Lägger till en namngiven resurs som anges som en bytematris i listan över resurser som ska skrivas. |
| AddResource(String, Object) |
Lägger till en namngiven resurs som anges som ett objekt i listan över resurser som ska skrivas. |
| AddResource(String, String) |
Lägger till en strängresurs i resurserna. |
| Close() |
Släpper alla resurser som används av ResXResourceWriter. |
| Dispose() |
Släpper alla resurser som används av ResXResourceWriter. |
| Dispose(Boolean) |
Släpper de ohanterade resurser som används av ResXResourceWriter och släpper eventuellt de hanterade resurserna. |
| Equals(Object) |
Avgör om det angivna objektet är lika med det aktuella objektet. (Ärvd från Object) |
| Finalize() |
Den här medlemmen åsidosätter Finalize() metoden. |
| Generate() |
Skriver alla resurser som läggs till med AddResource(String, Byte[]) metoden i utdatafilen eller strömmen. |
| GetHashCode() |
Fungerar som standard-hash-funktion. (Ärvd från Object) |
| GetType() |
Hämtar den aktuella instansen Type . (Ärvd från Object) |
| MemberwiseClone() |
Skapar en ytlig kopia av den aktuella Object. (Ärvd från Object) |
| ToString() |
Returnerar en sträng som representerar det aktuella objektet. (Ärvd från Object) |