begin process at 2012 02 11 11:25:56
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C#

 > 

Archives

 > 

.NET

 > 

contenu d'un fichier byte[] en string via WebService...


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

contenu d'un fichier byte[] en string via WebService...

jeudi 10 mars 2005 à 11:27:42 | contenu d'un fichier byte[] en string via WebService...

Bowen123

Bonjour tous,

Je tente de passer le contenu d'un fichier
( string monContenuFichierString = Convert.ToBase64String(byte[ ] monContenuFichier); )
 dans une string via webService. ce contenu est insrer dans une string "XML" que j'ai construit, genre :

maStringXML = "<Fichier nom=\"" + nomFichier + "\"" + " contenu= \"" + monContenuFichierString + "\"" + "</Fichier>")

Mon problème est que je n'ai pas la fin de ma string, a savoir la fermeture de balise, car je supose ke le contenu est trop "gros";

J'ai essayé de passer par un StringBuilder meme resultat:

public string getXml(bool contenu){

StringBuilder xml=new StringBuilder();
xml.Insert(xml.Length,
"<Fichier nom=\"" + this.ficNom +"\" path=\"" + this.ficSpec);

if (contenu) {
   xml.Insert (xml.Length,
"\" >");
   xml.Insert(xml.Length,
"<Contenu=\"byte\">" +    Convert.ToBase64String   (this.FicContenu,0,this.FicContenu.Length));//FicContenu est un byte[ ]
   xml.Insert(xml.Length,
"</Contenu>");
}

xml.Insert(xml.Length, "\" >");
xml.Insert(xml.Length,
"</Fichier>");

return xml.ToString();

Je ne peu pas utilisé les Objet XML (XMLNode, XMLElement, etc.. ), obligé de passé par une string (directive projet).

des idées?

jeudi 10 mars 2005 à 12:16:05 | Re : contenu d'un fichier byte[] en string via WebService...

Crazyht

Administrateur CodeS-SourceS

public string getXml(bool contenu)
{
   StringBuilder xml=
new StringBuilder();
   xml.Append(
"<Fichier nom=\"");
   xml.Append(this.ficNom);
   xml.Append(
"\" path=\"");
   xml.Append(this.ficSpec);
   xml.Append("\" >");
   if (contenu) 
   {

      xml.Append(
"<Contenu=\"byte\">");   
      xml.Append(Convert.ToBase64String   (
this.FicContenu,0,this.FicContenu.Length));
      xml.Append(
"</Contenu>");
   }
   xml.Append(
"</Fichier>");
   return xml.ToString();
}

Essaye comme ca, Il doit y avoir une erreur de formatage du XML dans ton code de base ...

A++

Crazyht
MVP Visual C#.NET

[Admin Codes-Sources]
[Membre Developer-Association]

jeudi 10 mars 2005 à 17:43:34 | Re : contenu d'un fichier byte[] en string via WebService...

Bowen123

Merci!

C'est vrai que c'est un peu plus propre comme ça.

cependant, je viens de constater que l'erreur venai du chargement de cette string :

XmlDocument dataXML = new XmlDocument();

dataXML.LoadXml(chaineXML);

Je pense que certains caractere du contenu (du tableau de byte reconverti en string) ne passe pas dans le load.

Je suis vraiment pas doué pour le xml et les classes xml en C#.

Un autre coup de main please, merci

jeudi 10 mars 2005 à 17:59:58 | Re : contenu d'un fichier byte[] en string via WebService...

Crazyht

Administrateur CodeS-SourceS
Hummm...

Suis pas certain de ton hypothese, En effet la Base64 est justement faites pour que toutes les valeurs d'un byte soit transformer en qq chose de valide en XML (ou autre)

Par contre essaie dans :
xml.Append("<Contenu=\"byte\">"); 

Essaie de retirer le ="byte", je suis pas sur que ca soit vraiment valide en XML sous cette forme <contenu="byte">blabla</contenu> je parirer plus pour un flux ressemblant à :

public string getXml(bool contenu)
{
   StringBuilder xml=
new StringBuilder();
   xml.Append(
"<Fichier nom=\"");
   xml.Append(this.ficNom);
   xml.Append(
"\" path=\"");
   xml.Append(this.ficSpec);
   xml.Append("\" >");
   if (contenu) 
   {

      xml.Append("<ContenuType>byte</ContenuType>");   
      xml.Append("<Contenu>");   
      xml.Append(Convert.ToBase64String   (
this.FicContenu,0,this.FicContenu.Length));
      xml.Append(
"</Contenu>");
   }
   xml.Append(
"</Fichier>");
   return xml.ToString();
}


A++

Crazyht
MVP Visual C#.NET

[Admin Codes-Sources]
[Membre Developer-Association]
vendredi 11 mars 2005 à 10:39:43 | Re : contenu d'un fichier byte[] en string via WebService...

Bowen123

le loadXml du dataDocument souleve tjrs une XMLException.
(" Jeton inattendu.Le jeton attendu est 'NAME' Ligne 1 position 102.")

peut on chargé la string XML formé ci dessus meme si elle ne contien pas la ligne d'encoding? ca vien peut etre de la?..
vendredi 11 mars 2005 à 10:42:55 | Re : contenu d'un fichier byte[] en string via WebService...

Crazyht

Administrateur CodeS-SourceS
Ha ha bonne question, je viens juste de penser à la meme chose en lisant le debut de ta reponse :)

je serait tenter de dire : "Essaie :)"

A++

Crazyht
MVP Visual C#.NET

[Admin Codes-Sources]
[Membre Developer-Association]
vendredi 11 mars 2005 à 18:42:21 | Re : contenu d'un fichier byte[] en string via WebService...

Bowen123

bon pour ceux qui aurait le meme probleme, j'ai résolu le mien en enlevant l'attribut de mon noeud enfant (ici le noeud "CONTENU").

apparement soit :
- il ne peu y avoir d'attribut à un noeud enfant
- il ne peu y avoir et un attribut ET une valeur dans le neoud en meme temps....

Merci Crazyht pour ton soutient ;)

vendredi 11 mars 2005 à 18:50:27 | Re : contenu d'un fichier byte[] en string via WebService...

Crazyht

Administrateur CodeS-SourceS

Mais dis mois c t pas ma dexieme reponse ca ?

A++

Crazyht
MVP Visual C#.NET

[Admin Codes-Sources]
[Membre Developer-Association]
mardi 15 mars 2005 à 16:26:25 | Re : contenu d'un fichier byte[] en string via WebService...

Bowen123

Sisi  c bien pour ca que je te remercie d'ailleur ;)

Cependant, le XML Myster demeure... pkoi ne peut-on pas avoir d'attribut ET une valeur pour un noeud enfant?... mais ça.. c'est une autre h... euh un autre sujet
mercredi 16 mars 2005 à 08:30:00 | Re : contenu d'un fichier byte[] en string via WebService...

Crazyht

Administrateur CodeS-SourceS
En fait dans ce cas cela devrait s'ecrire :

<contenu type='byte'>blabla</contenu>

et pas
<contenu='byte'>blabla</contenu>

l'attribut du noeud etant type :)

A++

Crazyht
MVP Visual C#.NET

[Admin Codes-Sources]
[Membre Developer-Association]


Cette discussion est classée dans : insert, string, contenu, xml, length


Répondre à ce message

Sujets en rapport avec ce message

Probleme d'insert db access [ par space ] Je suis desole de poser des questions aussi stupides mais bon je vois pas je suis callé. J'aimerais realise un insert dans une bd access et pour cela Récupérer le contenu d'une page sous forme de string [ par ttornade ] Bjr tout le monde,je voudrais récupérer le contenu d'une page(par exemple télécharger une page html) et l'assigner à une variable de type string. Il y XML [ par maevacmoi ] Hello !J'ai une fonction qui fait la transformation XSL en recevant un XML. La fonction ci-dessous fonctionne très bien si elle reçoit en paramètre : CreateText() [ par JCpp ] Je voudrais enregistrer une page d'un site en format XML.J'ai trouvé une source qui mémorise le contenu de la page en «string»http://www.csharpfr.com/ imprimer le contenu d'un fichier xml [ par creanova2000 ] creanovabonjour je voudrai savoir comment je peux imprimer le contenu d'un fichier xmls'il vous plair est ce que vous pouver me donner un exemple.merc convertir un string en color [ par godefrw ] Bonjour, j'aurais besoin de convertir un string (lu dans un fichier xml), en color (system.drawing.color). cela me permettrait de pouvoir définir la c faire un INSERT en c# [ par july_68 ] bonjour,j'essaye de faire un INSERT avec le code suivant string sqlcmd=" insert into agenda (id_type,hd,hf,bloc,datedebut,datefin,Idperiodicite,Type,s Solution [ par Solution ] Bonjour,pour ceux qui sont intéressé par la manipulation de fichier xml voici un bou de code pour l'affichage de contenu d'un balise spécifié (precise C# Xml attribute [ par shad252 ] Bonjour, voila mon probleme : je creer un fhichier xml avec differents elements... Plus tard je veux ajouter un attribut à un de mes elements par exem Définir une base de langue à l'aide d'Xml [ par cfz ] Bonjour, Etant un ancien développeur VB6 je souhaite me remettre au gout du jour avec .Net et C# depuis quelques jours... mais ce n'est pas toujours t


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,324 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales