Encoding.WebName Property
When overridden in a derived class, gets the name registered with the Internet Assigned Numbers Authority (IANA) for the current encoding.
Namespace: System.Text
Assembly: mscorlib (in mscorlib.dll)
The WebName property is the same as the Name property.
Note that WebName returns an IANA-registered name for the encoding. The HeaderName property defines a different encoding that might work better for e-mail headers. However, most applications should use WebName instead.
For more information on the IANA, go to www.iana.org.
The Encoding.WebName is the same as the EncodingInfo.Name returned by Encoding.GetEncodings. Some of the web names are duplicates; see the remarks for Encoding.GetEncodings for more information.
The following example includes the WebName in an HTML header.
using System; using System.IO; using System.Text; using System.Web; namespace WebNameExample { public class ExampleClass { public static void Main(string[] args) { // Use UTF8 encoding. Encoding encoding = Encoding.UTF8; StreamWriter writer = new StreamWriter("Encoding.html", false, encoding); writer.WriteLine("<html><head>"); // Write charset attribute to the html file. // The value of charset is returned by the WebName property. writer.WriteLine("<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=" + encoding.WebName +"\">"); writer.WriteLine("</head><body>"); writer.WriteLine("<p>" + HttpUtility.HtmlEncode(encoding.EncodingName) + "</p>"); writer.WriteLine("</body></html>"); writer.Flush(); writer.Close(); } } } /* This code produces the following output in an HTML file. <html><head> <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8"> </head><body> <p>Unicode (UTF-8)</p> </body></html> */
The following example retrieves the different names for each encoding and displays the encodings with one or more names that are different from EncodingInfo.Name. It displays EncodingName but does not compare against it.
using System; using System.Text; public class SamplesEncoding { public static void Main() { // Print the header. Console.Write( "Name " ); Console.Write( "CodePage " ); Console.Write( "BodyName " ); Console.Write( "HeaderName " ); Console.Write( "WebName " ); Console.WriteLine( "Encoding.EncodingName" ); // For every encoding, compare the name properties with EncodingInfo.Name. // Display only the encodings that have one or more different names. foreach( EncodingInfo ei in Encoding.GetEncodings() ) { Encoding e = ei.GetEncoding(); if (( ei.Name != e.BodyName ) || ( ei.Name != e.HeaderName ) || ( ei.Name != e.WebName )) { Console.Write( "{0,-18} ", ei.Name ); Console.Write( "{0,-9} ", e.CodePage ); Console.Write( "{0,-18} ", e.BodyName ); Console.Write( "{0,-18} ", e.HeaderName ); Console.Write( "{0,-18} ", e.WebName ); Console.WriteLine( "{0} ", e.EncodingName ); } } } } /* This code produces the following output. Name CodePage BodyName HeaderName WebName Encoding.EncodingName shift_jis 932 iso-2022-jp iso-2022-jp shift_jis Japanese (Shift-JIS) windows-1250 1250 iso-8859-2 windows-1250 windows-1250 Central European (Windows) windows-1251 1251 koi8-r windows-1251 windows-1251 Cyrillic (Windows) Windows-1252 1252 iso-8859-1 Windows-1252 Windows-1252 Western European (Windows) windows-1253 1253 iso-8859-7 windows-1253 windows-1253 Greek (Windows) windows-1254 1254 iso-8859-9 windows-1254 windows-1254 Turkish (Windows) csISO2022JP 50221 iso-2022-jp iso-2022-jp csISO2022JP Japanese (JIS-Allow 1 byte Kana) iso-2022-kr 50225 iso-2022-kr euc-kr iso-2022-kr Korean (ISO) */
Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.