CultureAndRegionInfoBuilder.CreateFromLdml(String) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Rekonstytuuje CultureAndRegionInfoBuilder obiekt z określonego pliku XML, który zawiera reprezentację obiektu.
public:
static System::Globalization::CultureAndRegionInfoBuilder ^ CreateFromLdml(System::String ^ xmlFileName);
public static System.Globalization.CultureAndRegionInfoBuilder CreateFromLdml (string xmlFileName);
static member CreateFromLdml : string -> System.Globalization.CultureAndRegionInfoBuilder
Public Shared Function CreateFromLdml (xmlFileName As String) As CultureAndRegionInfoBuilder
Parametry
- xmlFileName
- String
Nazwa pliku, która zawiera reprezentację CultureAndRegionInfoBuilder XML obiektu.
Zwraca
Nowy obiekt, który jest odpowiednikiem informacji przechowywanych w parametrze xmlFileName
.
Wyjątki
xmlFileName
to null
.
xmlFileName
jest pustym ciągiem ("") lub nieprawidłową nazwą pliku lub ścieżki.
Dane w pliku xmlFileName
nie mają prawidłowego formatu XML.
-lub-
Wystąpił błąd we/wy podczas uzyskiwania dostępu do elementu xmlFileName
.
Dane w xmlFileName
pliku nie są w prawidłowym formacie LDML.
Przykłady
W poniższym przykładzie przedstawiono Save metody i CreateFromLdml .
// This example demonstrates the CultureAndRegionInfoBuilder.Save and
// CreateFromLdml methods.
// Compile this example with a reference to sysglobl.dll.
using System;
using System.Globalization;
using System.IO;
using System.Xml;
class Sample
{
public static void Main()
{
string savedCARIB = "mySavedCARIB.xml";
string msg1 = "The name of the original CultureAndRegionInfoBuilder" +
" is \"{0}\".";
string msg2 = "Reconstituting the CultureAndRegionInfoBuilder object " +
"from \"{0}\".";
string msg3 = "The name of the reconstituted CultureAndRegionInfoBuilder" +
" is \"{0}\".";
// Construct a new, privately used culture that extends the en-US culture
// provided by the .NET Framework. In this sample, the CultureAndRegion-
// Types.Specific parameter creates a minimal CultureAndRegionInfoBuilder
// object that you must populate with culture and region information.
CultureAndRegionInfoBuilder cib1 = null;
CultureAndRegionInfoBuilder cib2 = null;
try {
cib1 = new CultureAndRegionInfoBuilder(
"x-en-US-sample", CultureAndRegionModifiers.None);
}
catch (ArgumentException ae)
{
Console.WriteLine(ae);
return;
}
// Populate the new CultureAndRegionInfoBuilder object with culture information.
CultureInfo ci = new CultureInfo("en-US");
cib1.LoadDataFromCultureInfo(ci);
// Populate the new CultureAndRegionInfoBuilder object with region information.
RegionInfo ri = new RegionInfo("US");
cib1.LoadDataFromRegionInfo(ri);
// Display a property of the new custom culture.
Console.Clear();
Console.WriteLine(msg1, cib1.CultureName);
// Save the new CultureAndRegionInfoBuilder object in the specified file in
// LDML format. The file is saved in the same directory as the application
// that calls the Save method.
Console.WriteLine("Saving the custom culture to a file...");
try {
cib1.Save( savedCARIB );
}
catch (IOException exc)
{
Console.WriteLine("** I/O exception: {0}", exc.Message);
return;
}
// Create a new CultureAndRegionInfoBuilder object from the persisted file.
Console.WriteLine(msg2, savedCARIB);
try {
cib2 = CultureAndRegionInfoBuilder.CreateFromLdml( savedCARIB );
}
catch (XmlException xe)
{
Console.WriteLine("** XML validation exception: {0}", xe.Message);
return;
}
// Display a property of the resonstituted custom culture.
Console.WriteLine(msg3, cib2.CultureName);
// At this point you could call the Register method and make the reconstituted
// custom culture available to other applications. The mySavedCARIB.xml file
// remains on your computer.
}
}
/*
This code example produces the following results:
The name of the original CultureAndRegionInfoBuilder is "x-en-US-sample".
Saving the custom culture to a file...
Reconstituting the CultureAndRegionInfoBuilder object from "mySavedCARIB.xml".
The name of the reconstituted CultureAndRegionInfoBuilder is "x-en-US-sample".
*/
' This example demonstrates the CultureAndRegionInfoBuilder.Save and
' CreateFromLdml methods.
' Compile this example with a reference to sysglobl.dll.
Imports System.Globalization
Imports System.IO
Imports System.Xml
Class Sample
Public Shared Sub Main()
Dim savedCARIB As String = "mySavedCARIB.xml"
Dim msg1 As String = "The name of the original CultureAndRegionInfoBuilder" & _
" is ""{0}""."
Dim msg2 As String = "Reconstituting the CultureAndRegionInfoBuilder object " & _
"from ""{0}""."
Dim msg3 As String = "The name of the reconstituted CultureAndRegionInfoBuilder" & _
" is ""{0}""."
' Construct a new, privately used culture that extends the en-US culture
' provided by the .NET Framework. In this sample, the CultureAndRegion-
' Types.Specific parameter creates a minimal CultureAndRegionInfoBuilder
' object that you must populate with culture and region information.
Dim cib1 As CultureAndRegionInfoBuilder = Nothing
Dim cib2 As CultureAndRegionInfoBuilder = Nothing
Try
cib1 = New CultureAndRegionInfoBuilder("x-en-US-sample", _
CultureAndRegionModifiers.None)
Catch ae As ArgumentException
Console.WriteLine(ae)
Return
End Try
' Populate the new CultureAndRegionInfoBuilder object with culture information.
Dim ci As New CultureInfo("en-US")
cib1.LoadDataFromCultureInfo(ci)
' Populate the new CultureAndRegionInfoBuilder object with region information.
Dim ri As New RegionInfo("US")
cib1.LoadDataFromRegionInfo(ri)
' Display a property of the new custom culture.
Console.Clear()
Console.WriteLine(msg1, cib1.CultureName)
' Save the new CultureAndRegionInfoBuilder object in the specified file in
' LDML format. The file is saved in the same directory as the application
' that calls the Save method.
Console.WriteLine("Saving the custom culture to a file...")
Try
cib1.Save(savedCARIB)
Catch exc As IOException
Console.WriteLine("** I/O exception: {0}", exc.Message)
Return
End Try
' Create a new CultureAndRegionInfoBuilder object from the persisted file.
Console.WriteLine(msg2, savedCARIB)
Try
cib2 = CultureAndRegionInfoBuilder.CreateFromLdml(savedCARIB)
Catch xe As XmlException
Console.WriteLine("** XML validation exception: {0}", xe.Message)
Return
End Try
' Display a property of the resonstituted custom culture.
Console.WriteLine(msg3, cib2.CultureName)
' At this point you could call the Register method and make the reconstituted
' custom culture available to other applications. The mySavedCARIB.xml file
' remains on your computer.
End Sub
End Class
'This code example produces the following results:
'
'The name of the original CultureAndRegionInfoBuilder is "x-en-US-sample".
'Saving the custom culture to a file...
'Reconstituting the CultureAndRegionInfoBuilder object from "mySavedCARIB.xml".
'The name of the reconstituted CultureAndRegionInfoBuilder is "x-en-US-sample".
'
Uwagi
Parametr xmlFileName
określa nazwę pliku, który zawiera reprezentację CultureAndRegionInfoBuilder XML obiektu. Format pliku XML nosi nazwę Locale Data Markup Language (LDML) w wersji 1.1. Nowy CultureAndRegionInfoBuilder obiekt jest tworzony i inicjowany przy użyciu danych w pliku xmlFileName
. Metoda Save wykonuje operację odwrotną CreateFromLdml metody .
W pliku LDML właściwości kultury są określane jako elementy <special>
podrzędne elementu w <identity>
sekcji . Wartość właściwości jest zwykle określana przez atrybut elementu type
. Na przykład poniższy fragment pliku LDML definiuje element nadrzędny kultury jako kulturę neutralną w języku angielskim.
<identity>
<version number="1.1">ldml version 1.1</version>
<generation date="2012-05-16" />
<special xmlns:msLocale="http://schemas.microsoft.com/globalization/2004/08/carib/ldml">
<!-content removed -->
<msLocale:parentName type="en" />
<!-content removed -->
</special>
</identity>
Aby uzyskać więcej informacji na temat standardu LDML, zobacz Unicode Technical Standard #35, "Locale Data Markup Language (LDML)" w witrynie internetowej Konsorcjum Unicode.