Cortar string e adicionar reticências.
Muitas das vezes precisamos cortar um texto em determinado número de caracteres e colocar reticências, e para agilizar neste tipo de problema segue um método que ajudará e muito neste sentido.
public string CortarString(string textCrop, int num, string trail)
{
var result = "";
var rx = new Regex("<[^>]*>");
textCrop = rx.Replace(textCrop, "");
var iMax = num - trail.Length;
if (iMax <= 0)
{
result = "";
}
if (textCrop.Length <= num)
{
result = textCrop;
}
else
{
try
{
var sOut = textCrop.Substring(0, num);
var iPos = sOut.LastIndexOf(" ");
if (iPos != -1)
{
return sOut.Substring(0, iPos) + trail;
}
iPos = sOut.Length;
return sOut.Substring(0, iPos) + trail;
}
catch (Exception ex)
{
Erros.FormataErro(ex);
}
}
return result;
}
Para utilização basta chamar o metodo e passar os parametros:
textCrop = seu texto completo
num = quatidade de caracteres que vc deseja exibir
trail = o que você quer no final do corte ex: "...", "."
Observação: ao passar seu texto para o método, ele remover qualquer tipo de tag HTML.