Lettura di un TAG di un file XML

sabato 24 novembre 2007 - 13.19

bluelions Profilo | Senior Member

Salve, vi scrivo per chiedervi un aiuto in merito alla lettura di un elemento di un file xml.

Dopo aver letto il file xml, ora avrei la necessita di leggere l'elemento a me desiderato.
Mi spiego meglio, ho questa struttura:
<?xml version="1.0" encoding="utf-8" ?>
<Struttura>
<PROVA1>pippo</PROVA1>
<PROVA2>pluto</PROVA2>
</Struttura>

E' possibile recuperare direttamente il nome dell'elemento da codice facendo:
element.PROVA1, e in questo caso recupero il valore pippo

alx_81 Profilo | Guru

>Salve,
Ciao!

>vi scrivo per chiedervi un aiuto in merito alla lettura
>di un elemento di un file xml.
>
>Dopo aver letto il file xml, ora avrei la necessita di leggere
>l'elemento a me desiderato.
>Mi spiego meglio, ho questa struttura:
><?xml version="1.0" encoding="utf-8" ?>
><Struttura>
> <PROVA1>pippo</PROVA1>
> <PROVA2>pluto</PROVA2>
></Struttura>
>
>E' possibile recuperare direttamente il nome dell'elemento da
>codice facendo:
>element.PROVA1, e in questo caso recupero il valore pippo

Se vuoi trattarlo come oggetto, deserializzalo in una classe scritta da te e poi utilizza la proprietà come ti serve.
La classe deve essere uguale all'xml e poi usi il namespace System.Xml.Serialization.

Però dovrei sapere una cosa, che versione Framework utilizzi?
Com'è in realtà l'xml? postami quello vero, non quello di esempio..
ciao!
Alx81 =)

http://blogs.dotnethell.it/suxstellino

bluelions Profilo | Senior Member

Visto che sto facendo delle prove momentaneamente la struttura xml è fatta come descritto in precedenza, cioè:
<Struttura>
<PROVA1>pippo</PROVA1>
<PROVA2>pluto</PROVA2>
</Struttura>

Per quanto riguarda il framework utilizzo la versione 1.4

Spero di essere stato chiaro, resto in attesa di una tua cordiale risposta.
GRAZIE

alx_81 Profilo | Guru

>Visto che sto facendo delle prove momentaneamente la struttura
>xml è fatta come descritto in precedenza, cioè:
><Struttura>
><PROVA1>pippo</PROVA1>
><PROVA2>pluto</PROVA2>
></Struttura>
>
>Per quanto riguarda il framework utilizzo la versione 1.4
>
>Spero di essere stato chiaro, resto in attesa di una tua cordiale risposte
Allora, la versione del framework che usi dovrebbe essere la 1.1.4322.
Dunque, puoi utilizzare, come ti dicevo, la deserializzazione.
Deserializzare un oggetto da XML vuol dire ottenere un oggetto di tipo TuaClasse, dove TuaClasse è formata dalla definizione dell'XML.
Il processo contrario, che porta a trasformare un TuoOggetto in un XML si chiama Serializzazione.

Guardati questo link per una breve intro:
http://msdn2.microsoft.com/en-US/library/182eeyhh.aspx

Ora, partendo dal tuo XML, possiamo scrivere l'oggetto che lo conterrà tramite questa classe:

Public Class Struttura Private _Prova1 As String Private _Prova2 As String ' primo nodo Public Property PROVA1() As String Get Return _Prova1 End Get Set(ByVal value As String) _Prova1 = value End Set End Property ' secondo nodo Public Property PROVA2() As String Get Return _Prova2 End Get Set(ByVal value As String) _Prova2 = value End Set End Property End Class

esempio di deserializzazione:
Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

esempio di serializzazione:

Dim objStruttura As New Struttura objStruttura.PROVA1 = "pippo" objStruttura.PROVA2 = "pluto" Dim sb As New StringBuilder() Dim dser As New XmlSerializer(GetType(Struttura)) Dim sw As New IO.StringWriter(sb) dser.Serialize(sw, objStruttura) sw.Close() MessageBox.Show(sb.ToString())

Spero possa esserti di aiuto
>GRAZIE
di nulla!

Alx81 =)

http://blogs.dotnethell.it/suxstellino
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5