que tenía que hacer algo similar, tratando de convertir una cadena de números en un intervalo de tiempo mediante la adición de :
y .
. Básicamente tomaba 235959999 y necesitaba convertirlo a 23: 59: 59.999. Para mí fue fácil porque sabía dónde necesitaba "insertar" dichos personajes.
ts = ts.Insert(6,".");
ts = ts.Insert(4,":");
ts = ts.Insert(2,":");
reasignando básicamente ts a sí mismo con el carácter insertado. Trabajé en mi camino de atrás hacia adelante, porque era flojo y no quería hacer operaciones matemáticas adicionales para los otros personajes insertados.
Usted podría intentar algo similar haciendo:
alpha = alpha.Insert(5,"-");
alpha = alpha.Insert(11,"-"); //add 1 to account for 1 -
alpha = alpha.Insert(17,"-"); //add 2 to account for 2 -
...
No se puede anexar a una cadena, y no se puede agregar un carácter específico a una cadena. Las cadenas no se pueden modificar. * Puedes * crear una nueva cadena basada en una cadena existente. Parece una diferencia sutil, pero puede ser importante. –
relacionado con http://stackoverflow.com/questions/3306568/how-do-i-set-a-character-at-an-index-in-a-string-in-c/ –