Convierta el vector <unsigned char> {1,2,3} en la cadena "1-2-3" COMO DÍGITOS
Quiero mostrar números en unstd::vector<unsigned char>
en una pantalla, pero en camino al destinatario, necesito ingresar estos números en unstd::string
.
Lo que haya intentadoatoi
, reinterpret_cast
, string.c_str()
...), me dio una representación sin sentido o con letras de esos números originales, es decir, sus caracteres ascii correspondientes.
Entonces, ¿cómo puedo convertir fácilmente (preferiblemente el método estándar)vector<unsigned char> {1,2,3}
en unastring "1-2-3"
?
En la publicación original (más tarde editada) mencioné que podía hacerlo en C # o Java. A pedido de πάντα ῥεῖ para proporcionar un ejemplo en C # o Java, aquí hay una forma rápida de Linq C #:
public static string GetStringFromListNumData<T>(List<T> lNumData)
{
// if (typeof(T) != typeof(IConvertible)) throw new ArgumentException("Expecting only types that implement IConvertible !");
string myString = "";
lNumData.ForEach(x => myString += x + "-");
return myString.TrimEnd('-');
}