Работа со строками AnsiString
Для удаления пробелов с правой стороны строки надо использовать метод AnsiString::TrimRight(). Его синтаксис:
AnsiString __fastcall TrimRight() const;
Если исходная строка имеет пробелы справа, то эта функция удалит пробелы и вернет строку без пробелов сзади:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Edit2->Text = Edit1->Text.TrimRight();
}
Другая функция позволяет использовать две последнии функции как одну. Вы можете использовать метод AnsiString::Trim() для удаления пробелов с обеих сторон строки. Синтаксис метода:
AnsiString __fastcall Trim() const;
Ниже пример использования этого метода:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Edit2->Text = Edit1->Text.Trim();
}
Альтернативно, вы можете использовать глобальную функцию для выполнения аналогичной операции. Синтаксис функции:
AnsiString _fastcall Trim (const AnsiString S);
Пример:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Edit2->Text = Trim(Edit1->Text);
}
Конвертирование строки
Конвертирование типов С/С++ в AnsiString
В элементах управления, таких как edit box используются строковые типы значений. Это происходит потому что компилятор не в состоянии определить какой тип значения будет использоваться в элементе управления Edit. По этой причине, базовым типом значения контента для элементов управления была определена строка AnsiString. Если вы желаете выполнить какие-либо математические операции над строкой, вы должны сконвертировать строку в допустимый тип значения.
Класс AnsiString имеет множество конструкторов которые позволяют создать строку любого типа. Например:
Символ: AnsiString Symbol = 'H';
Целое:AnsiString Int = 120;
Длинное целое: AnsiString Longer = -73495745;
С плавающей точкой: AnsiString WeeklyEarnings = 675.15;
Двойное число:AnsiString WeeklyEarnings = 675.15; AnsiString Silver = 2.15e28;
Строка: AnsiString GirlFriend = "Micheline Phoon";
Любая из этих переменных может быть объявлена, используя эквивалентный конструктор:
AnsiString Symbol('H');
AnsiString Int(120);
AnsiString GirlFriend("Micheline Phoon");
AnsiString WeeklyEarnings(675.15);
AnsiString Longer(-73495745);
AnsiString Silver(2.15e28);