Usuário com melhor resposta
Converter Acentuacao

Pergunta
-
Bom dia!!!
Tenho um site que mostra informacoes em gridview com o acento certinho, mas quando recupero vem codificado com acentuacao para internet.
Estive pesquisando e descobri 2 formas de fazer:
Server.HtmlDecode("ão")
ou criar uma funcao:
public class Troca { private Dictionary<string, string> dicTroca; public Troca() { dicTroca = new Dictionary<string, string>(); dicTroca.Add("!", "!"); dicTroca.Add("#", "#"); dicTroca.Add("$", "$"); dicTroca.Add("%", "%"); dicTroca.Add("&", "&"); dicTroca.Add("'", "'"); dicTroca.Add("(", "("); dicTroca.Add(")", ")"); dicTroca.Add(":", ":"); dicTroca.Add(";", ";"); dicTroca.Add("<", "<"); dicTroca.Add("=", "="); dicTroca.Add(">", ">"); dicTroca.Add("?", "?"); dicTroca.Add("@", "@"); dicTroca.Add("[", "["); dicTroca.Add("]", "]"); dicTroca.Add("^", "^"); dicTroca.Add("_", "_"); dicTroca.Add("{", "{"); dicTroca.Add("}", "}"); dicTroca.Add("~", "~"); dicTroca.Add("À", "À"); dicTroca.Add("Á", "Á"); dicTroca.Add("Â", "Â"); dicTroca.Add("Ã", "Ã"); dicTroca.Add("Ç", "Ç"); dicTroca.Add("È", "È"); dicTroca.Add("É", "É"); dicTroca.Add("Ê", "Ê"); dicTroca.Add("Ì", "Ì"); dicTroca.Add("Í", "Í"); dicTroca.Add("Î", "Î"); dicTroca.Add("Ñ", "Ñ"); dicTroca.Add("Ò", "Ò"); dicTroca.Add("Ó", "Ó"); dicTroca.Add("Ô", "Ô"); dicTroca.Add("Õ", "Õ"); dicTroca.Add("Ù", "Ù"); dicTroca.Add("Ú", "Ú"); dicTroca.Add("Û", "Û"); dicTroca.Add("à", "à"); dicTroca.Add("á", "á"); dicTroca.Add("â", "â"); dicTroca.Add("ã", "ã"); dicTroca.Add("ç", "ç"); dicTroca.Add("è", "è"); dicTroca.Add("é", "é"); dicTroca.Add("ê", "ê"); dicTroca.Add("ì", "ì"); dicTroca.Add("í", "í"); dicTroca.Add("î", "î"); dicTroca.Add("ñ", "ñ"); dicTroca.Add("ò", "ò"); dicTroca.Add("ó", "ó"); dicTroca.Add("ô", "ô"); dicTroca.Add("õ", "õ"); dicTroca.Add("ù", "ù"); dicTroca.Add("ú", "ú"); dicTroca.Add("û", "û"); } public string RetornaFraseSemASCII(string frase) { StringBuilder fraseFormatada = new StringBuilder(); for (int i = 0; i < frase.Length; i++) { if (frase[i] == '&' && frase[i+1] == '#') { fraseFormatada.Append(this.TrocarCodigoPorLetra(string.Format("{0}{1}{2}{3}{4}{5}", frase[i], frase[i + 1], frase[i + 2], frase[i + 3], frase[i + 4], frase[i + 5]))); i = i + 5; } else fraseFormatada.Append(frase[i]); } return fraseFormatada.ToString(); } private string TrocarCodigoPorLetra(string ascii) { if (dicTroca.ContainsKey(ascii)) { return dicTroca[ascii]; } return string.Empty; } }
Eu preciso de uma funcao como essa, ou a funcao do framawork faz justamente isso. Obrigado!!!
Respostas
-
Acho que o método do Framework já resolve isso pra vc.
Olha só: http://msdn.microsoft.com/en-us/library/7c5fyk1k.aspx
Abs,
SoPa- Sugerido como Resposta Adriel Codeco quarta-feira, 16 de junho de 2010 15:18
- Marcado como Resposta DaviSaba quarta-feira, 16 de junho de 2010 18:48
Todas as Respostas
-
Acho que o método do Framework já resolve isso pra vc.
Olha só: http://msdn.microsoft.com/en-us/library/7c5fyk1k.aspx
Abs,
SoPa- Sugerido como Resposta Adriel Codeco quarta-feira, 16 de junho de 2010 15:18
- Marcado como Resposta DaviSaba quarta-feira, 16 de junho de 2010 18:48
-