Gostaria de truncar uma string de forma que seu comprimento não exceda um determinado valor. Estou escrevendo em uma tabela de banco de dados e quero garantir que os valores que eu escrevo atendam às restrições do tipo de dados da coluna.
Por exemplo, seria bom se eu pudesse escrever o seguinte:
string NormalizeLength(string value, int maxLength)
{
return value.Substring(0, maxLength);
}
Infelizmente, isso gera uma exceção, porque maxLength
geralmente excede os limites da string value
. Claro, eu poderia escrever uma função como a seguinte, mas esperava que algo assim já existisse.
string NormalizeLength(string value, int maxLength)
{
return value.Length <= maxLength ? value : value.Substring(0, maxLength);
}
Onde está a API indescritível que executa essa tarefa? Existe um?
StringBuilder
permite truncar encurtando o comprimento, mas você ainda precisa executar a verificação do comprimento para evitar o alargamento da corda.
.Trim()
de uma maneira que pareça enganosa, pois muda a string: "Remove todos os caracteres de espaço em branco iniciais e finais do objeto String atual. "