Partilhar via


XmlConvert.DecodeName(String) Método

Definição

Decodifica um nome. Esse método faz o inverso dos métodos EncodeName(String) e EncodeLocalName(String).

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

Parâmetros

name
String

O nome a ser transformado.

Retornos

O nome decodificado.

Exemplos

O exemplo a seguir codifica e decodifica nomes.

#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.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

Comentários

Os nomes são decodificados usando as seguintes regras:

  • Os nomes são decodificados da esquerda para a direita.

  • Qualquer sequência _xHHHH_ (em que HHHH significa um código UCS-2 hexadecimal de quatro dígitos válido) que não foi decodificado é transformado no caractere Unicode 2.1 (Unicode 3.0 correspondente, se compatível com o aplicativo).

  • Nenhum formato curto é reconhecido. Eles são passados sem tradução. Por exemplo, _x20_ ou __ não são decodificados.

Observação

A codificação real do caractere é específica do aplicativo. Por exemplo, Order_x0020_Details se torna Detalhes do Pedido. Até mesmo caracteres de escape inválidos em nomes XML serão reconhecidos e decodificados.

Aplica-se a