Pb UTF8 ? gestion des accents d'une base oracle

PeTeRsLaStAr Messages postés 158 Date d'inscription samedi 22 juin 2002 Statut Membre Dernière intervention 27 juin 2015 - 14 févr. 2007 à 15:29
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 - 16 févr. 2007 à 10:07
Bonjour

Voilà mon problème.
Lorsque j'inscris des valeurs contenant des accents dans une base oracle sur un serveur, lorsque je récupère ces données via le code suivant :

// Init the request
loraCmd = new OracleCommand(lsRequest, oOracleConnexion);
OracleDataReader lOraDataRead = loraCmd.ExecuteReader();
//lOraDataRead.GetOrdinal("MaValeur") contient la valeur "définition"
string sGetValue="";
sGetValue=lOraDataRead.GetString(lOraDataRead.GetOrdinal("MaValeur"))));

sGetValue contient la valeur suivante : "D�finition" au lieu de "Définition"

J'ai essayé plusieurs trucs,
(string) sGetValue=System.Text.Encoding.ASCII.GetString(System.Text.Encoding.UTF8.GetBytes(lOraDataRead.GetString(lOraDataRead.GetOrdinal("MaValeur")))));

Ou l'exemple suivant
Thread.CurrentThread.CurrentUICulture= new  CultureInfo("fr");
CultureInfo ci = Thread.CurrentThread.CurrentUICulture;
ResourceManager rm = new ResourceManager("items", Assembly.GetExecutingAssembly());
sGetValue=lOraDataRead.GetString(lOraDataRead.GetOrdinal("MaValeur")),ci));

Je reste persuadé qu'il s'agit d'un paramétrage ou d'une histoire de Culture, de Globalization ou quelque chose comme ça, mais là...
Je bloque.

est ce que quelqu'un aurait une solution ? ou une idée de piste ?

D'avance Merci.

****************************************************
Il n'y a pas de pb sans solutions : il faut juste trouver le temps pour les chercher

1 réponse

sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
16 févr. 2007 à 10:07
Ca n'a rien à voir avec la culture... mais avec l'encodage des caractères dans Oracle.
Par défaut, si mes souvenirs sont bons, ce doit être Unicode... donc à toi de (dé)coder les chaines.

Sébastien FERRAND (blog)
Consultant Indépendant
[Microsoft Visual C# MVP]
0
Rejoignez-nous