2009-09-27 8 views
1
caractères

j'utilise Google traduction pour traduire des mots que je puis stocker dans DB, en utilisant ce code:Google Translate - obtenir non anglais

http://www.developerfusion.com/community/blog-entry/8391765/translate-text-in-c-using-google- translate/

string txt = Translator.TranslateText("Cosmetics", "en|sr"); Response.Write(txt);

Texte traduit (string txt) montre correctement dans le navigateur: Козметика

mais source pour résultat ressemble à ceci: Козметика

Problème est que je ne veux pas mettre cette chaîne brouillée résultante txt dans DB, mais au lieu de vouloir placer 'Козметика' comme je le ferais à partir de l'entrée TextBox. Alors qu'est-ce qui se passe ici?

Je suppose qu'il doit faire quelque chose avec les pages de code et le codage Unicode.

Merci

Daniel

Répondre

4

Ce que vous obtenez est les entités HTML codées des caractères dans le texte. Chaque caractère est codé dans un HTML entity pour l'afficher correctement dans les navigateurs.

Pour inverser nouveau dans le caractère original, vous pouvez utiliser la méthode HttpUtility.HtmlDecode:

string encoded = "Козметика"; 
string decoded = HttpUtility.HtmlDecode(encoded); 

Cela décode le dos texte codé en Козметика.

Questions connexes