XDeclaration.Encoding 属性
定义
获取或设置此文档的编码。Gets or sets the encoding for this document.
public:
property System::String ^ Encoding { System::String ^ get(); void set(System::String ^ value); };
public string Encoding { get; set; }
public string? Encoding { get; set; }
member this.Encoding : string with get, set
Public Property Encoding As String
属性值
一个包含此文档的代码页名称的 String。A String containing the code page name for this document.
示例
下面的示例创建两个文档,一个文档使用 utf-8 编码,另一个使用 utf-16 编码。The following example creates two documents, one with utf-8 encoding, and one with utf-16 encoding. 然后,该示例加载这两个文档并将编码输出到控制台。It then loads the documents and prints the encoding to the console.
Console.WriteLine("Creating a document with utf-8 encoding");
XDocument encodedDoc8 = new XDocument(
new XDeclaration("1.0", "utf-8", "yes"),
new XElement("Root", "Content")
);
encodedDoc8.Save("EncodedUtf8.xml");
Console.WriteLine("Encoding is:{0}", encodedDoc8.Declaration.Encoding);
Console.WriteLine();
Console.WriteLine("Creating a document with utf-16 encoding");
XDocument encodedDoc16 = new XDocument(
new XDeclaration("1.0", "utf-16", "yes"),
new XElement("Root", "Content")
);
encodedDoc16.Save("EncodedUtf16.xml");
Console.WriteLine("Encoding is:{0}", encodedDoc16.Declaration.Encoding);
Console.WriteLine();
XDocument newDoc8 = XDocument.Load("EncodedUtf8.xml");
Console.WriteLine("Encoded document:");
Console.WriteLine(File.ReadAllText("EncodedUtf8.xml"));
Console.WriteLine();
Console.WriteLine("Encoding of loaded document is:{0}", newDoc8.Declaration.Encoding);
Console.WriteLine();
XDocument newDoc16 = XDocument.Load("EncodedUtf16.xml");
Console.WriteLine("Encoded document:");
Console.WriteLine(File.ReadAllText("EncodedUtf16.xml"));
Console.WriteLine();
Console.WriteLine("Encoding of loaded document is:{0}", newDoc16.Declaration.Encoding);
Console.WriteLine("Creating a document with utf-8 encoding")
Dim encodedDoc8 As XDocument = _
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<Root>Content</Root>
encodedDoc8.Save("EncodedUtf8.xml")
Console.WriteLine("Encoding is:{0}", encodedDoc8.Declaration.Encoding)
Console.WriteLine()
Console.WriteLine("Creating a document with utf-16 encoding")
Dim encodedDoc16 As XDocument = _
<?xml version="1.0" encoding="utf-16" standalone="yes"?>
<Root>Content</Root>
encodedDoc16.Save("EncodedUtf16.xml")
Console.WriteLine("Encoding is:{0}", encodedDoc16.Declaration.Encoding)
Console.WriteLine()
Dim newDoc8 As XDocument = XDocument.Load("EncodedUtf8.xml")
Console.WriteLine("Encoded document:")
Console.WriteLine(File.ReadAllText("EncodedUtf8.xml"))
Console.WriteLine()
Console.WriteLine("Encoding of loaded document is:{0}", newDoc8.Declaration.Encoding)
Console.WriteLine()
Dim newDoc16 As XDocument = XDocument.Load("EncodedUtf16.xml")
Console.WriteLine("Encoded document:")
Console.WriteLine(File.ReadAllText("EncodedUtf16.xml"))
Console.WriteLine()
Console.WriteLine("Encoding of loaded document is:{0}", newDoc16.Declaration.Encoding)
该示例产生下面的输出:This example produces the following output:
Creating a document with utf-8 encoding
Encoding is:utf-8
Creating a document with utf-16 encoding
Encoding is:utf-16
Encoded document:
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<Root>Content</Root>
Encoding of loaded document is:utf-8
Encoded document:
<?xml version="1.0" encoding="utf-16" standalone="yes"?>
<Root>Content</Root>
Encoding of loaded document is:utf-16
注解
由 WebName 返回的任何值都是有效值。Any value returned by WebName is a valid value.
如果读取编码的文档,则此属性将设置为代码页名称。If you read an encoded document, then this property will be set to the code page name.
如果将此属性设置为有效的代码页名称,则在序列化时,LINQ to XML 将使用指定的编码进行序列化。If you set this property to a valid code page name, then when serializing, LINQ to XML will serialize with the specified encoding.