я должен был сделать что-то подобное, пытаясь преобразовать строку чисел в отрезок времени, добавляя в :
и .
. В основном я принимал 235959999 и должен был преобразовать его в 23: 59: 59.999. Для меня это было легко, потому что я знал, где мне нужно «вставить» указанных символов.
ts = ts.Insert(6,".");
ts = ts.Insert(4,":");
ts = ts.Insert(2,":");
В основном переназначение ts на себя с вставленным символом. Я проделал свой путь со спины к фронту, потому что был ленив и не хотел делать дополнительную математику для других вставленных символов.
Вы могли бы попробовать что-то подобное, выполнив:
alpha = alpha.Insert(5,"-");
alpha = alpha.Insert(11,"-"); //add 1 to account for 1 -
alpha = alpha.Insert(17,"-"); //add 2 to account for 2 -
...
Вы не можете добавить в строку, и вы не можете добавить определенный символ в строке. Строки не могут быть изменены. Вы * можете * создать новую строку на основе существующей строки. Кажется, это тонкая разница, но это может быть важно. –
относящийся к http://stackoverflow.com/questions/3306568/how-do-i-set-a-character-at-an-index-in-a-string-in-c/ –