Я в процессе преобразования приложения VB. Я пытаюсь создать строку, используя StringBuilder, поскольку я не могу изменить строку, используя функцию Mid. У меня есть цикл, хотя он добавляет только первый символ в строку, остальное - просто пробел. Как я могу добавить все данные в строку?Создание строки с помощью StringBuilder в C#
Ниже приведен фрагмент кода; спасибо за вашу помощь
int table = 0;
string tableData = Strings.StrDup(253, " ");
int i = 0;
string listData = null;
int pointer =0;
StringBuilder sb = new StringBuilder(tableData);
sb.Insert(0, Strings.StrDup(253, Strings.Chr(32)));
sb.Insert(0, typeOfTable + Strings.Chr(0));
pointer = 2;
for (i = 0; i <= lstTABLE.Items.Count -1; i++)
{
listData = lstTABLE.Items[i].ToString();
table = Convert.ToInt32(-(Conversion.Val(listData) * 10));
sb.Insert(pointer, Functions.FNCodeTwoChar(table));
pointer +=2;
}
sb.Insert (202,Functions.EncodeKP(Convert.ToSingle(Conversion.Val(lblStartTable.Text))));
sb.Insert(205,Functions.EncodeKP(Convert.ToSingle(Conversion.Val(lblEndTable.Text))));
sb.Insert(208, Strings.Space(36));
sb.Insert(244, " 0");
sb.Insert(248, " 0");
И вопрос в том, что? –
Почему вы используете 'StringBuilder.Insert', требуя вам управлять глупыми указателями на символы? Используйте ['StringBuilder.Append'] (https://msdn.microsoft.com/en-us/library/system.text.stringbuilder.append.aspx)! – poke
Спасибо, но не нужно сбрасывать – Russ