Estoy usando .NET, y tengo que truncar una cadena que puede contener caracteres multibyte para que no supere una longitud establecida una vez que esté codificada en la URL . Esto parece algo integrado, pero no puedo encontrarlo.Limitar la longitud de una cadena URL codificada con caracteres multibyte en .NET
Me gustaría hacer una subcadena una vez que está codificada en URL, pero eso podría quitar parte de un carácter codificado (el espacio se convierte en% 20, y si fuera al final podría truncarse a% 2, que es inválido), o esa parte de un carácter multibyte se truncaría (π se codifica como% CF% 80, y podría truncarse como%,% CF,% CF% 8, todos los cuales son incorrectos).
¿Estás preguntando cómo truncar una cadena a una longitud determinada o estás preguntando cómo hacerlo automáticamente? La respuesta es que la primera pregunta es longString.Substring (0, maxLength). – Kendrick
@Kendrick: Creo que la pregunta es que realmente no se sabe cuánto tiempo va a estar una cadena en su forma urinada, hasta que realmente la urlínea, ya que algunos caracteres en el original (también conocidos como caracteres multibyte) requerirán más de un byte en la versión urlencoded. – MusiGenesis
@MusiGenesis: Eso es correcto. He actualizado mi pregunta para ser más específico. – thefroatgt