XML (
Extensible Markup Language)
é um formato organizado de dados.
Neste artigo vou mostrar de uma forma simples, como escrever, ler, alterar e eliminar dados nestes ficheiros.
Estrutura de ficheiro xml, deve existir sempre um elemento principal (root tag) e os elementos secundários.
<?xml version="1.0" encoding="utf-8"?>
<!--Lista de Compras-->
<Compras>
<Vegetais>
<Vegetal1>Couves</Vegetal1>
<Vegetal2>Alfaces</Vegetal2>
<Vegetal3>Espinafre</Vegetal3>
</Vegetais>
<Frutos>
<Fruto1>Maça</Fruto1>
<Fruto2>Banana</Fruto2>
<Fruto1>Laranja</Fruto1>
<Fruto2>Cereja</Fruto2>
</Frutos>
</Compras>
- Criar
' Cria um novo ficheiro XML com a codificação UTF8
Dim xmlw As New XmlTextWriter(Environment.CurrentDirectory & "\MyXML.xml", System.Text.Encoding.UTF8)
xmlw.Formatting = Formatting.Indented
xmlw.WriteStartDocument()
' Adiciona um comentário geral
xmlw.WriteComment("Lista de Compras")
' Criar um elemento geral
xmlw.WriteStartElement("Compras")
' Criar o elemento "Vegetais" e alguns dados
With xmlw
.WriteStartElement("Vegetais")
.WriteElementString("Vegetal1", "Couves")
.WriteElementString("Vegetal2", "Alfaces")
.WriteElementString("Vegetal3", "Espinafre")
.WriteEndElement()
End With
' Criar o elemento "Frutos" e alguns dados
With xmlw
.WriteStartElement("Frutos")
.WriteElementString("Fruto1", "Maça")
.WriteElementString("Fruto2", "Banana")
.WriteElementString("Fruto1", "Laranja")
.WriteElementString("Fruto2", "Cereja")
.WriteEndElement()
End With
xmlw.WriteEndElement()
xmlw.WriteEndDocument()
' Fecha o documento XML
xmlw.Flush()
xmlw.Close()
- Fim Criar
Para ler um elemento
xml.Load(Environment.CurrentDirectory & "\MyXML.xml") 'Pegar nomes para as colunas do DGV_SEL
Dim s As String = xml.DocumentElement.GetElementsByTagName("Vegetal1").Item(0).InnerText
MsgBox(s)
Para modificar um elemento
'Para alterar valores
Dim xDoc As New XmlDocument : xDoc.Load(Environment.CurrentDirectory & "\MyXML.xml")
Dim nodelist As Xml.XmlNodeList
nodelist = xDoc.GetElementsByTagName("Vegetal1")
nodelist.Item(0).InnerText = "1"
xDoc.Save(Environment.CurrentDirectory & "\MyXML.xml")
E por ultimo apagar um elemento
Dim xmlFile = XDocument.Load(Environment.CurrentDirectory & "\MyXML.xml")
xmlFile...<Numeros>.Remove() 'Remove um elemento geral (por completo)
xmlFile...<N1>.Remove() 'Remove um único elemento
xmlFile.Save(Environment.CurrentDirectory & "\MyXML.xml")
Neste artigo pretendo demonstrar como trabalhar com ficheiros xml de uma forma simples.
Até breve...