Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

XML writer in Pocket PC e Visual Basic .net

Problemi di HTML? Di PHP, ASP, .NET, JSP, Perl, SQL, JavaScript, Visual Basic..?
Vuoi realizzare programmi in C, C++, Java, Ruby o Smalltalk, e non sai da che parte cominciare?
Entra qui e troverai le risposte!

Moderatori: Triumph Of Steel, archimede

XML writer in Pocket PC e Visual Basic .net

Postdi iucaa » 29/05/08 15:35

Ciao a tutti

Non sono molto pratico di XML, qualcuno di voi ha già sviluppato programmi per leggere / scrivere file XML su pocket PC? su internet si trova poco, oppure gli esempi che ci sono non funzionano, tipo questo:


Imports System.Xml
Imports System

Module Module1

Sub Main()


Dim writer As New XmlTextWriter("xmltest.xml", Nothing)

' Starts a new document.
writer.WriteStartDocument()
'Write comments.
writer.WriteComment("Commentss: XmlWriter Test Program")
writer.WriteProcessingInstruction("Instruction", "Person Record")
' Add elements to the file.
writer.WriteStartElement("p", "person", "urn:person")
writer.WriteStartElement("LastName", "")
writer.WriteString("Chand")
writer.WriteEndElement()
writer.WriteStartElement("FirstName", "")
writer.WriteString("Mahesh")
writer.WriteEndElement()

' Ends the document
writer.WriteEndDocument()

End Sub



Il file viene creato ma vuoto, forse manca lo schema xsd? se si dove e come andrebbe messo?

:( :cry:
iucaa
Utente Senior
 
Post: 488
Iscritto il: 23/10/03 12:03
Località: Roma

Sponsor
 

Re: XML writer in Pocket PC e Visual Basic .net

Postdi hydra » 30/05/08 07:36

Solitamente io i file xml li leggo e li scrivo utilizzando i dataset, quindi potresti avere una cosa del genere (è in c# ma dovresti riuscire a capire lo stesso :D)

Codice: Seleziona tutto
internal System.Data.DataSet dst;

/*
Crea la struttura del dataset per importare il file xml. Creando la struttura da codice posso gestire il dataset come voglio, in particolare posso tipizzare le colonne.
*/
void createXMLStructure()
{
     // Crea una nuova istanza del dataset
     dst = new System.Data.DataSet("dstProva");

     // Crea una tabella all'interno del dataset
     System.Data.DataTable table1 = dst.Tables.Add("tbProva");

     // Crea le colonne nella tabella, assegnando il tipo di dato corrispondente
     table1.Columns.Add("Col1", typeof(string));
     table1.Columns.Add("Col2", typeof(int));
}

// Nell'evento di apertura della finestra gestisco la creazione del dataset e il caricamento del file
private void main_load(object sender, EventArgs e)
{
     createXMLStructure();
     dst.ReadXml("testfile.xml");
}

// Cliccando il bottone sul form scrivo i dati nel file, passando per il dataset
private void button1_click(object sender, EventArgs e)
{
     // Crea una nuova riga
     System.Data.DataRow newRow = dst.Tables["Prova"].NewRow();

     // Aggiunge i dati alla prima colonna
     newRow["Col1"] = "Some text...";

     // Aggiunge i dati alla seconda colonna
     newRow["Col2"] = 1;

     // Aggiunge la riga appena creata nella tabella
     dst.Tables["tbProva"].Rows.Add(newRow);

     // Scrive il dataset nel file xml
     dst.WriteXml("testfile.xml");
}
Avatar utente
hydra
Moderatore
 
Post: 7002
Iscritto il: 19/07/04 08:06
Località: Vallis Duplavis

Re: XML writer in Pocket PC e Visual Basic .net

Postdi iucaa » 30/05/08 09:30

Grazie mille ci provo e ti faccio sapere ciao :)
iucaa
Utente Senior
 
Post: 488
Iscritto il: 23/10/03 12:03
Località: Roma

Re: XML writer in Pocket PC e Visual Basic .net

Postdi iucaa » 30/05/08 10:14

Ciao eccomi di nuovo, scusami sono un pò di coccio!. :undecided:

L'ho provato, ma non riesco a capire dove sia il passaggio che crea il file XML, in particolare ecco il sorgente:

Quando viene eseguita la procedura Form1_Load, l'istruzione dst.ReadXml("testfile.xml"); , mi dice che il file testfile.xml non esiste:

Codice: Seleziona tutto

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;


namespace XMLTEST01
{
    public partial class Form1 : Form
    {
        public Form1()
        {

   
            InitializeComponent();
        }
        internal System.Data.DataSet dst;
        private void Form1_Load(object sender, EventArgs e)
        {
            createXMLStructure();
          // Riga di errore
         dst.ReadXml("testfile.xml");
   
        }

        /*
    Crea la struttura del dataset per importare il file xml. Creando la struttura da codice posso gestire il dataset come voglio, in particolare posso tipizzare le colonne.
    */
        void createXMLStructure()
        {
            // Crea una nuova istanza del dataset
            dst = new System.Data.DataSet("dstProva");

            // Crea una tabella all'interno del dataset
            System.Data.DataTable table1 = dst.Tables.Add("tbProva");

            // Crea le colonne nella tabella, assegnando il tipo di dato corrispondente
            table1.Columns.Add("Col1", typeof(string));
            table1.Columns.Add("Col2", typeof(int));
        }

        private void button1_Click(object sender, EventArgs e)
        {
            // Crea una nuova riga
            System.Data.DataRow newRow = dst.Tables["Prova"].NewRow();

            // Aggiunge i dati alla prima colonna
            newRow["Col1"] = "Some text...";

            // Aggiunge i dati alla seconda colonna
            newRow["Col2"] = 1;

            // Aggiunge la riga appena creata nella tabella
            dst.Tables["tbProva"].Rows.Add(newRow);

            // Scrive il dataset nel file xml
            dst.WriteXml("testfile.xml");
        }

    }
}
iucaa
Utente Senior
 
Post: 488
Iscritto il: 23/10/03 12:03
Località: Roma

Re: XML writer in Pocket PC e Visual Basic .net

Postdi hydra » 30/05/08 10:25

Allora modifica la riga con
Codice: Seleziona tutto
if (IO.File.Exists("testfile.xml")) dst.ReadXml("testfile.xml");

L'errore te lo da perchè stai leggendo un file che non c'è, in questo ultimo caso gli dici di caricare il file solo se esiste.
Avatar utente
hydra
Moderatore
 
Post: 7002
Iscritto il: 19/07/04 08:06
Località: Vallis Duplavis

Re: XML writer in Pocket PC e Visual Basic .net

Postdi hydra » 30/05/08 10:32

Altra cosa, nel codice del button modifica
Codice: Seleziona tutto
System.Data.DataRow newRow = dst.Tables["Prova"].NewRow();

con
Codice: Seleziona tutto
System.Data.DataRow newRow = dst.Tables["tbProva"].NewRow();

altrimenti ti darà errore anche li.
Avatar utente
hydra
Moderatore
 
Post: 7002
Iscritto il: 19/07/04 08:06
Località: Vallis Duplavis


Torna a Programmazione


Topic correlati a "XML writer in Pocket PC e Visual Basic .net":


Chi c’è in linea

Visitano il forum: Nessuno e 4 ospiti