Encoding.WebName Property
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 following code example includes the WebName in an HTML header.
#using <System.dll> #using <System.Web.dll> using namespace System; using namespace System::IO; using namespace System::Text; using namespace System::Web; int main() { // Use UTF8 encoding. Encoding^ encoding = Encoding::UTF8; StreamWriter^ writer = gcnew StreamWriter( "Encoding.html",false,encoding ); writer->WriteLine( "<html><head>" ); // Write charset attribute to the html file. // writer -> WriteLine(S"<META HTTP-EQUIV=\"Content-Type\S" CONTENT=\"text/html; charset=S {0}", encoding.WebName +"\S">"); writer->WriteLine( String::Concat( "<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=", encoding->WebName, "\">" ) ); writer->WriteLine( "</head><body>" ); writer->WriteLine( "<p>{0}</p>", HttpUtility::HtmlEncode( encoding->EncodingName ) ); writer->WriteLine( "</body></html>" ); writer->Flush(); writer->Close(); }
package WebNameExample;
import System.*;
import System.IO.*;
import System.Text.*;
import System.Web.*;
public class ExampleClass
{
public static void main(String[] args)
{
// Use UTF8 encoding.
Encoding encoding = Encoding.get_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.get_WebName() + "\">"));
writer.WriteLine("</head><body>");
writer.WriteLine(("<p>" +
HttpUtility.HtmlEncode(encoding.get_EncodingName()) + "</p>"));
writer.WriteLine("</body></html>");
writer.Flush();
writer.Close();
} //mail
} //ExampleClass
The following code 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 namespace System; using namespace System::Text; int 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. System::Collections::IEnumerator^ myEnum = Encoding::GetEncodings()->GetEnumerator(); while ( myEnum->MoveNext() ) { EncodingInfo ^ ei = safe_cast<EncodingInfo ^>(myEnum->Current); Encoding^ e = ei->GetEncoding(); if ( !ei->Name->Equals( e->BodyName ) || !ei->Name->Equals( e->HeaderName ) || !ei->Name->Equals( 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) */
import System.*;
import System.Text.*;
public class SamplesEncoding
{
public static void main(String[] args)
{
// Print the header.
Console.Write("Name ");
Console.Write("CodePage ");
Console.Write("BodyName ");
Console.Write("HeaderName ");
Console.Write("WebName ");
Console.WriteLine("Encoding.EncodingName");
EncodingInfo ei[] = Encoding.GetEncodings();
for(int iCtr = 0; iCtr < ei.length; iCtr++) {
Encoding e = ei[iCtr].GetEncoding();
if(!(ei[iCtr].get_Name().equalsIgnoreCase(e.get_BodyName()))
|| !(ei[iCtr].get_Name().equalsIgnoreCase(e.get_HeaderName()))
|| !(ei[iCtr].get_Name().equalsIgnoreCase(e.get_WebName()))) {
Console.Write("{0,-18} ", ei[iCtr].get_Name());
Console.Write("{0,-9} ", String.valueOf(e.get_CodePage()));
Console.Write("{0,-18} ", e.get_BodyName());
Console.Write("{0,-18} ", e.get_HeaderName());
Console.Write("{0,-18} ", e.get_WebName());
Console.WriteLine("{0} ", e.get_EncodingName());
}
}
} //main
} //SamplesEncoding
/*
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 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.