Bonjour,

En Vbnet, j'appelle une page ASP (VBScript). Je passe dans cette page un flux XML en POST que je récupère dans la page ASP. Mon problème est que les caractères accentués sont transformés en "?" dans ma page ASP. Avez vous une solution pour obtenir mes caractères correctement ?


Merci.

Code VbNet (Envoi du flux) :
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
 Dim req As WebRequest
            AdresseServeur = "toto.asp"
            Try
                'req = CType(WebRequest.Create(AdresseServeur), HttpWebRequest)
                req = WebRequest.Create(AdresseServeur)
            Catch ex As Exception
                Throw New Erreur.WebHttpException(AdresseServeur, ex)
            End Try
 
            req.Credentials = System.Net.CredentialCache.DefaultCredentials
            req.Method = "POST"
            req.ContentType = "application/x-www-form-urlencoded"
 
            'inserer la taille des fichiers
            'd'abord celle du flux ensuite
            req.ContentLength = dataToPost3.Length
 
            Dim tempstream As Stream = req.GetRequestStream
            tempstream.Write(dataToPost3, 0, dataToPost3.Length)
            tempstream.Close()
 
            Dim reponse As WebResponse = req.GetResponse()
 
            'affichage de la réponse
            Dim sr As New StreamReader(reponse.GetResponseStream, encoding.ASCII)
            ReponseServeur = sr.ReadToEnd
            sr.Close()
Code VbScript (Récupération du flux) :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
'Lecture des données du POST
post=request.BinaryRead(request.Totalbytes)
 
...
 
'Conversion octets->ascii, xmltext contient le flux XML
for nIndex = 1 to pivot+9
	xmltext = xmltext & Chr(AscB(MidB( post, nIndex, 1)))
next
 
' Ici, xmltext contient des "?" à la place des "é" par exemple ...