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

VB.NET Discussion :

Objet courriel-ISO 8859-


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2012
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2012
    Messages : 31
    Par défaut Objet courriel-ISO 8859-
    Bonjour à tous,

    J'ai un petit soucis avec un programme de courriel. En fait ce qu'il doit faire c'est lire un courriel et stocker son contenu dans une BD pour ensuite le réenvoyer à la bonne personne.

    Or, environ une fois sur 4, j'ai des caratères indésirés dans mon objet. Des caractères du genre =?iso-8859-1?Q?. J'ai regardé sur internet et on parle beaucoup de MIME et d'encodage de caractères, mais j'ai beau chercher, personne ne dit comment régler ce problème... Voici comment j'entre mes données dans la BD (à noter que dans la BD aussi les caratères sont bizarres)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
                Command.Parameters.Add(New SqlParameter("@Objet", SqlDbType.NVarChar, 250))
                Command.Parameters("@Objet").Value = email.Subject
    merci d'avance!

  2. #2
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 198
    Par défaut
    un string en .net est en unicode, c'est au moment de remplir le string .net à partir de ton email qu'il faut connaitre l'encodage utilisé pour le transformer
    system.text.encoding
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Membre averti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2012
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2012
    Messages : 31
    Par défaut
    J'ai fait ceci, mais j'ai toujours une erreur

    Code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Command.Parameters("@Objet").Value = System.Text.Encoding.UTF8(email.Subject)
    Erreur

    Erreur 1 La classe 'System.Text.Encoding' ne peut pas être indexée, car elle n'a pas de propriété par défaut. U:\pop3\pop3\Gestion.vb 178 50 pop3

  4. #4
    Membre Expert Avatar de DonQuiche
    Inscrit en
    Septembre 2010
    Messages
    2 741
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 2 741
    Par défaut
    Ce que cherche à te dire Pol63, c'est que le problème se situe à la création de email.Subject lui-même, pas lors du stockage dans la DB.

  5. #5
    Membre averti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2012
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2012
    Messages : 31
    Par défaut
    Je vois... Je vais regarder ça et je reviens avec la réponse !

    Merci

  6. #6
    Membre averti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2012
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2012
    Messages : 31
    Par défaut
    Bon, il semblerait que l'erreur survienne quand mon objet est trop long et qu'il contient des accents. J'ai donc pensé que je pouvais lire ma chaîne et si je trouve le string "?=iso-8859" dedans je la force à se réencoder comme il faut.

    Or, je n'ai toujours pas trouvé comment forcer le réencodage de la ma chaîne. J'ai laisser tomber l'option d'aller changer la lecture du courriel, ça vient d'un dll et j'ai pas trop envi d'y toucher...

    Je veux soit pouvoir réencoder ma chaîne ou la filtrer pour enlever les cochoneries et les remplacer par du texte correct.

    Des idées s'il-vous-plaît?

Discussions similaires

  1. [Encoding][String] remplacement de caractères ISO 8859-2
    Par srenaudo dans le forum Entrée/Sortie
    Réponses: 4
    Dernier message: 23/03/2006, 12h06
  2. Réponses: 15
    Dernier message: 24/02/2006, 14h17
  3. caractères ISO-8859-1 en console sur XP
    Par Thierry Chappuis dans le forum Windows
    Réponses: 3
    Dernier message: 14/12/2005, 13h13
  4. [UBUNTU] Pages Web Iso-8859-15
    Par troumad dans le forum Ubuntu
    Réponses: 6
    Dernier message: 03/06/2005, 16h11
  5. Convertir une chaine UTF8 en ISO-8859-1
    Par eods dans le forum Entrée/Sortie
    Réponses: 2
    Dernier message: 26/08/2004, 16h57

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