Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Se você quiser converter uma cadeia de caracteres em um tipo de dados .NET, use o método XmlConvert que atende aos requisitos do aplicativo. Para obter uma lista de todos os métodos de conversão disponíveis na classe XmlConvert , consulte XmlConvert.
A cadeia de caracteres retornada do método ToString é uma versão de cadeia de caracteres dos dados que são passados. Além disso, existem vários tipos .NET que convertem usando a classe XmlConvert mas eles não usam os métodos na classe System.Convert . A classe XmlConvert segue a especificação de tipo de dados do esquema XML (XSD) e tem um tipo de dados para o qual o XmlConvert pode mapear.
A tabela a seguir lista os tipos de dados .NET e os tipos de cadeia de caracteres retornados usando o mapeamento de tipo de dados do esquema XML (XSD). Esses tipos .NET não podem ser processados usando System.Convert.
| Tipo .NET | String retornada |
|---|---|
| Boolean | "verdadeiro", "falso" |
| Single.PositiveInfinity | "INF" |
| Single.NegativeInfinity | "-INF" |
| Double.PositiveInfinity | "INF" |
| Double.NegativeInfinity | "-INF" |
| DateTime | O formato é "aaaa-MM-ddTHH:mm:sszzzzzz" e seus subconjuntos. |
| Timespan | Formato é PnYnMnTnHnMnS ou seja, P2Y10M15DT10H30M20S é uma duração de 2 anos, 10 meses, 15 dias, 10 horas, 30 minutos e 20 segundos. |
Nota
Se converter qualquer um dos tipos .NET listados na tabela em uma cadeia de caracteres usando o método ToString , a cadeia de caracteres retornada não é o tipo base, mas o tipo de cadeia de caracteres XSD (esquema XML).
O tipo de valor DateTime e Timespan difere na medida em que um DateTime representa um instante no tempo, enquanto um TimeSpan representa um intervalo de tempo. Os formatos DateTime e Timespan são especificados na especificação de tipos de dados XSD (XML Schema). Por exemplo:
Dim writer As New XmlTextWriter("myfile.xml", Nothing)
Dim [date] As New DateTime(2001, 8, 4)
writer.WriteElementString("Date", XmlConvert.ToString([date]))
XmlTextWriter writer = new XmlTextWriter("myfile.xml", null);
DateTime date = new DateTime (2001, 08, 04);
writer.WriteElementString("Date", XmlConvert.ToString(date));
Saída
<Date>2001-08-04T00:00:00</Date>.
O código a seguir converte um inteiro em uma cadeia de caracteres:
Dim writer As New XmlTextWriter("myfile.xml", Nothing)
Dim value As Int32 = 200
writer.WriteElementString("Number", XmlConvert.ToString(value))
XmlTextWriter writer = new XmlTextWriter("myfile.xml", null);
Int32 value = 200;
writer.WriteElementString("Number", XmlConvert.ToString(value));
Saída
<Number>200</Number>
No entanto, se você estiver convertendo uma cadeia de caracteres para Boolean, Single ou Double, o tipo .NET retornado não é o mesmo que o tipo retornado ao usar a classe System.Convert .
String para Boolean
A tabela a seguir mostra que tipo é gerado para determinadas cadeias de caracteres de entrada, ao converter uma cadeia de caracteres em Boolean usando o método ToBoolean .
| Parâmetro de entrada de cadeia de caracteres válido | Tipo de saída .NET |
|---|---|
| "true" | Boolean.True |
| "1" | Boolean.True |
| "falso" | Boolean.Falso |
| "0" | Boolean.Falso |
Por exemplo, dado o seguinte XML:
Entrada
<Boolean>true</Boolean>
<Boolean>1</Boolean>
Ambos podem ser entendidos pelo código a seguir, e bvalue é System.Boolean.True:
Dim bvalue As Boolean = _
XmlConvert.ToBoolean(reader.ReadElementString())
Console.WriteLine(bvalue)
Boolean bvalue = XmlConvert.ToBoolean(reader.ReadElementString());
Console.WriteLine(bvalue);
String para Single
A tabela a seguir mostra que tipo é gerado para as cadeias de caracteres de entrada fornecidas, ao converter uma cadeia de caracteres em um Single usando o método ToSingle.
| Parâmetro de entrada de cadeia de caracteres válido | Tipo de saída .NET |
|---|---|
| "INF" | Single.PositiveInfinity |
| "-INF" | Single.NegativeInfinity |
Corda para Duplo
A tabela a seguir mostra que tipo é gerado para as cadeias de caracteres de entrada fornecidas, ao converter uma cadeia de caracteres em um Single usando o método ToDouble.
| Parâmetro de entrada de cadeia de caracteres válido | Tipo de saída .NET |
|---|---|
| "INF" | Double.PositiveInfinity |
| "-INF" | Double.NegativeInfinity |
O código a seguir grava <Infinity>INF</Infinity>:
Dim value As Double = Double.PositiveInfinity
writer.WriteElementString("Infinity", XmlConvert.ToString(value))
Double value = Double.PositiveInfinity;
writer.WriteElementString("Infinity", XmlConvert.ToString(value));