Bonjour,
j'utilise la fonction ci-dessous pour ajouté du texte a un fichier sur un serveur ftp, mon problème est que les accent ne sont pas pris en charge.
Shared Function AppendStringToFile(ByVal Str As String, ByVal pathFTP As String, ByVal User As String, ByVal pass As String, ByVal NouvelleLigne As Boolean)
Dim resultat
Try Dim request As FtpWebRequest = DirectCast(WebRequest.Create(pathFTP), FtpWebRequest) request.Method = WebRequestMethods.Ftp.AppendFile request.Credentials = New NetworkCredential(User, pass)
Dim fileContents As Byte()
If NouvelleLigne = True Then fileContents = Encoding.Default.GetBytes(vbNewLine & Str) Else fileContents = Encoding.Default.GetBytes(Str) End If
request.ContentLength = fileContents.Length
Dim requestStream As Stream = request.GetRequestStream requestStream.Write(fileContents, 0, fileContents.Length) requestStream.Close() Dim response As FtpWebResponse = DirectCast(request.GetResponse(), FtpWebResponse)
response.Close()
request.Abort()
resultat = "Fichier modifié avec succés !"
Catch ex As Exception
resultat = "Erreur :" + ex.Message
End Try
Return resultat
End Function
mon problème est surement dû au fait que system.io.stream ne prend pas en charge les accent. donc je souhaiterai savoir si il y a une autre classe que stream pour gérer GetRequestStream et qui prendrai en charge les accents, merci.
Dim requestStream As Stream = request.GetRequestStream fileContents = ASCIIEncoding.ASCII.GetBytes(Str) requestStream.Write(fileContents, 0, fileContents.Length) requestStream.Close()
et comme ça
Dim fileContents As Byte() If NouvelleLigne = True Then fileContents = ASCIIEncoding.ASCII.GetBytes(vbNewLine & Str) Else fileContents = ASCIIEncoding.ASCII.GetBytes(Str) End If
19 févr. 2015 à 18:48
et comme ça
mais je n'ai toujour pas les accents.