Encoding.WebName Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Wenn sie in einer abgeleiteten Klasse überschrieben wird, ruft der Name ab, der bei der Internet Assigned Numbers Authority (IANA) für die aktuelle Codierung registriert ist.
public:
virtual property System::String ^ WebName { System::String ^ get(); };
public virtual string WebName { get; }
member this.WebName : string
Public Overridable ReadOnly Property WebName As String
Eigenschaftswert
Der IANA-Name für den aktuellen Encoding.
Beispiele
Das folgende Beispiel enthält die WebName in einer HTML-Kopfzeile.
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>
*/
Imports System.IO
Imports System.Text
Imports System.Web
Namespace WebNameExample
Public Class ExampleClass
Public Overloads Shared Sub Main()
' Use UTF8 encoding.
Dim encoding As Encoding = Encoding.UTF8
Dim writer As New StreamWriter("Encoding.html", False, encoding)
writer.WriteLine("<html><head>")
' Write charset attribute to the html file.
writer.Write("<META HTTP-EQUIV=""Content-Type"" CONTENT=""text/html;")
writer.WriteLine(" charset=" + encoding.WebName + """>")
writer.WriteLine("</head><body>")
writer.WriteLine("<p>" + HttpUtility.HtmlEncode(encoding.EncodingName) + "</p>")
writer.WriteLine("</body></html>")
writer.Flush()
writer.Close()
End Sub
End Class
End Namespace
'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>
'
Im folgenden Beispiel werden die verschiedenen Namen für jede Codierung abgerufen und die Codierungen mit einem oder mehreren Namen angezeigt, die sich von EncodingInfo.Namedenen unterscheiden. Es wird angezeigt EncodingName , aber nicht verglichen.
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)
*/
Imports System.Text
Public Class SamplesEncoding
Public Shared Sub 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.
Dim ei As EncodingInfo
For Each ei In Encoding.GetEncodings()
Dim e As Encoding = ei.GetEncoding()
If ei.Name <> e.BodyName OrElse ei.Name <> e.HeaderName OrElse ei.Name <> e.WebName Then
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)
End If
Next ei
End Sub
End Class
'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)
Hinweise
Die WebName Eigenschaft ist identisch mit der Name Eigenschaft.
Beachten Sie, dass WebName ein IANA-registrierter Name für die Codierung zurückgegeben wird. Wenn der Wert der Name eines Standards ist, entspricht die Implementierung der Codierung möglicherweise nicht vollständig diesem Standard. Die HeaderName Eigenschaft definiert eine andere Codierung, die für E-Mail-Header besser funktioniert. Stattdessen sollten die meisten Apps verwendet werden WebName .
Weitere Informationen zur IANA, gehen Sie zu www.iana.org.
Dies Encoding.WebName ist identisch mit der EncodingInfo.Name zurückgegeben von Encoding.GetEncodings. Einige der Webnamen sind Duplikate; weitere Informationen finden Sie in den Hinweisen Encoding.GetEncodings .