optimizar un string.Format + sustituir
-
30-09-2019 - |
Pregunta
Tengo esta función. El perfil visual studio marcó la línea con string.Format tan caliente y estaban paso gran parte de mi tiempo.
¿Cómo puedo escribir este bucle de manera más eficiente?
public string EscapeNoPredicate(string sz)
{
var s = new StringBuilder(sz);
s.Replace(sepStr, sepStr + sepStr);
foreach (char v in IllegalChars)
{
string s2 = string.Format("{0}{1:X2}", seperator, (Int16)v);
s.Replace(v.ToString(), s2);
}
return s.ToString();
}
Solución
En lugar de calcular S2S foreach V cada vez que este método se llama; puede almacenarlos precalculados. Por supuesto que estoy asumiendo IllegalChars y separador sigue siendo igual.
Otros consejos
- En una string.format puede poner objetos, por lo que no es necesario (Int16) v. Se puede suministrar "v"
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow