XmlConvert.EncodeName(String) XmlConvert.EncodeName(String) XmlConvert.EncodeName(String) XmlConvert.EncodeName(String) Method

Definition

Konvertiert den Namen in einen gültigen XML-Namen.Converts the name to a valid XML name.

public:
 static System::String ^ EncodeName(System::String ^ name);
public static string EncodeName (string name);
static member EncodeName : string -> string
Public Shared Function EncodeName (name As String) As String

Parameter

name
String String String String

Ein zu übersetzender Name.A name to be translated.

Gibt zurück

Der Name, in dem eventuelle ungültige Zeichen durch eine Escapezeichenfolge ersetzt wurden.The name with any invalid characters replaced by an escape string.

Beispiele

Im folgenden Beispiel wird codiert und decodiert Namen.The following example encodes and decodes names.

#using <System.dll>
#using <System.XML.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
   
   // Encode and decode a name with spaces.
   String^ name1 = XmlConvert::EncodeName( "Order Detail" );
   Console::WriteLine( "Encoded name: {0}", name1 );
   Console::WriteLine( "Decoded name: {0}", XmlConvert::DecodeName( name1 ) );
   
   // Encode and decode a local name.
   String^ name2 = XmlConvert::EncodeLocalName( "a:book" );
   Console::WriteLine( "Encoded local name: {0}", name2 );
   Console::WriteLine( "Decoded local name: {0}", XmlConvert::DecodeName( name2 ) );
}

using System;
using System.IO;
using System.Xml;

public class Sample
{

  public static void Main()
  {

     // Encode and decode a name with spaces.
     string name1 = XmlConvert.EncodeName("Order Detail");
     Console.WriteLine("Encoded name: " + name1);
     Console.WriteLine("Decoded name: " + XmlConvert.DecodeName(name1));

     // Encode and decode a local name.
     string name2 = XmlConvert.EncodeLocalName("a:book");
     Console.WriteLine("Encoded local name: " + name2);
     Console.WriteLine("Decoded local name: " + XmlConvert.DecodeName(name2));

  }
}
Imports System
Imports System.IO
Imports System.Xml

public class Sample

  public shared sub Main()

     ' Encode and decode a name with spaces.
     Dim name1 as string = XmlConvert.EncodeName("Order Detail")
     Console.WriteLine("Encoded name: " + name1)
     Console.WriteLine("Decoded name: " + XmlConvert.DecodeName(name1))

     ' Encode and decode a local name.
     Dim name2 as string= XmlConvert.EncodeLocalName("a:book")
     Console.WriteLine("Encoded local name: " + name2)
     Console.WriteLine("Decoded local name: " + XmlConvert.DecodeName(name2))

  end sub
end class

Hinweise

Diese Methode übersetzt die ungültige Zeichen wie Leerzeichen oder Katakana-Zeichen halber Breite, die XML-Namen ohne die Unterstützung oder das Vorhandensein von Schemas zugeordnet werden müssen.This method translates invalid characters, such as spaces or half-width Katakana, that need to be mapped to XML names without the support or presence of schemas. Die ungültigen Zeichen werden in geschützte numerische Entitäten umgewandelt.The invalid characters are translated into escaped numeric entity encodings.

Das Escapezeichen ist "_".The escape character is "_". Alle Zeichen der XML-Namen, die nicht entspricht der XML 1.0-Spezifikation (fourth Edition) Recommendation wird als mit Escapezeichen versehen _xHHHH_.Any XML name character that does not conform to the XML 1.0 spec (fourth edition) recommendation is escaped as _xHHHH_. Die Zeichenfolge HHHH steht für den vierstelligen hexadezimalen UCS-2-Code für das Zeichen in die wichtigsten Bitfolge.The HHHH string stands for the four-digit hexadecimal UCS-2 code for the character in most significant bit first order. Beispielsweise wird dem Namen Order Details als Reihenfolge codiert_X0020_Details.For example, the name Order Details is encoded as Order_x0020_Details.

Der Unterstrich muss nicht geschützt werden, es sei denn, er wird von einer Zeichensequenz gefolgt, die beim Decodieren des Namens zusammen mit dem Unterstrich als Escapezeichenfolge fehlinterpretiert werden kann.The underscore character does not need to be escaped unless it is followed by a character sequence that together with the underscore can be misinterpreted as an escape sequence when decoding the name. Sortieren Sie z. B._Details wird nicht codiert, aber die Reihenfolge_X0020_ als Reihenfolge codiert_x005f_X0020_.For example, Order_Details is not encoded, but Order_x0020_ is encoded as Order_x005f_x0020_. Kurzformen sind zulässig.No shortforms are allowed. Z. B. die Formulare _X20_ und _ _ werden nicht generiert.For example, the forms _x20_ and __ are not generated.

Diese Methode stellt sicher, dass der Name gemäß der XML-Spezifikation gültig ist.This method guarantees the name is valid according to the XML specification. Sie erlaubt einen Doppelpunkt an beliebiger Position, d. h. der Name möglicherweise immer noch ungültige gemäß werden der Namespace-Spezifikation von W3C.It allows colons in any position, which means the name may still be invalid according to the W3C Namespace Specification. Um sicherzustellen, dass ein gültiger Namespace qualifizierten Namen verwenden EncodeLocalName für das Präfix und den lokalen Namen der Teile und verbinden Sie das Ergebnis mit einem Doppelpunkt.To guarantee it is a valid namespace qualified name use EncodeLocalName for the prefix and local name parts and join the result with a colon.

Gilt für:

Siehe auch