IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Problème lecture XML


Sujet :

C#

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    37
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2006
    Messages : 37
    Points : 13
    Points
    13
    Par défaut Problème lecture XML
    BOnjour,
    Je fais une application client / serveur. Sur mon serveur, je me connecte à une base de données qui enregistre tous mes enregistrement dans un fichier XML. Jusque là tout va bien (mon XML est correcte). Je l'envoi à mon client. Là tout foire, je recoi les données mais je ne peux pas les lire correctement. Cela plusieurs heures que je recherche le problème mais sans succès.
    Code Client:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    private void recevoirposition(string nom)
            {
                byte[] bufferposition = System.Text.Encoding.Default.GetBytes("Position"+nom);
     
                Client.Send(bufferposition, SocketFlags.None);
                // Creation d'un tableu de byte pour contenir les donnés reçues
                Byte[] bufferposition2 = new Byte[10000];
                // on met les bytes recuperés dans le tableau
     
                int taille=Client.Receive(bufferposition2);
     
                //On traduit les Bytes en caractère ASCII lisible
                string data = null;
                data = Encoding.ASCII.GetString(bufferposition2);
                DataSet ds = new DataSet();
                MemoryStream ms = new MemoryStream();
                ms.Write(bufferposition2, 0, taille);
                ds.ReadXml(ms,XmlReadMode.ReadSchema);
     
                if (data.Substring(0, 8) == "Position")
                {
                    position.Text = data.Remove(0, 8);
                }
     
            }
    Code Serveur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    private void donnerposition(Socket cl, string professeur)
            {
                // Objet connection
                //SqlConnection myConnection = new SqlConnection("Data Source=localhost;Initial Catalog=vestiaires;Persist Security Info=True;User ID=**;pwd=*******");
                SqlConnection myConnection = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=***********;Integrated Security=True;Connect Timeout=30;User Instance=True");
                myConnection.Open();
                // Objet Command
                SqlCommand command = new SqlCommand("Select * FROM Position WHERE [Professeur]='" + professeur + "';", myConnection);
                // Objet DataReader
                SqlDataReader reader = command.ExecuteReader();
                DataTable table = new DataTable();
                int fieldCount = reader.FieldCount;
                for (int i = 0; i < fieldCount; i++)
                {
                    table.Columns.Add(reader.GetName(i), reader.GetFieldType(i));
                }
                table.BeginLoadData();
                object[] values = new object[fieldCount];
                while (reader.Read())
                {
                    reader.GetValues(values);
                    table.LoadDataRow(values, true);
                }
                table.EndLoadData();
                DataSet ds = new DataSet();
                ds.Tables.Add(table);
                MemoryStream ms = new MemoryStream();
                ds.WriteXml(ms,XmlWriteMode.WriteSchema);
                cl.Send(ms.GetBuffer(),0,(int)ms.Position,SocketFlags.None);
            }

  2. #2
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    400
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 400
    Points : 444
    Points
    444
    Par défaut
    essaie d'utiliser

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.Text.Encoding.ASCII.GetBytes(string)
    plutôt que

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.Text.Encodin.Default.GetBytes(string)

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    37
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2006
    Messages : 37
    Points : 13
    Points
    13
    Par défaut
    Merci je testerai lundi car j'ai un petit soucis de base de données la :-(

Discussions similaires

  1. problème lecture xml sous internet explorer
    Par forst dans le forum Web
    Réponses: 7
    Dernier message: 02/07/2013, 16h48
  2. Problème lecture xml avec XML::SIMPLE
    Par chalu133 dans le forum Langage
    Réponses: 1
    Dernier message: 05/12/2012, 16h12
  3. Problème lecture XML
    Par Furr dans le forum VB.NET
    Réponses: 3
    Dernier message: 09/08/2012, 10h07
  4. [JDOM] Problème lecture XML
    Par Mhira dans le forum Format d'échange (XML, JSON...)
    Réponses: 4
    Dernier message: 29/05/2012, 21h50
  5. Problème lecture XML
    Par David_Geek dans le forum VBScript
    Réponses: 6
    Dernier message: 02/01/2010, 16h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo