Я пытаюсь использовать функцию SysUtils.WrapText()
со строкой, содержащей экранированные одинарные кавычки, и получаю неожиданный результат.
var
Lines : TStrings;
begin
Lines := TStringList.Create;
try
Lines.Text := WrapText('Can''t format message, message file not found', 15);
ShowMessage(Lines.Text);
finally
Lines.Free;
end;
end;
Кажется, чтофункция вообще не переносит строку, если строка содержит символ апострофа.
Я также пытался использовать код #39
вместо символа одинарных кавычек, но проблема сохраняется.Кроме того, я проверил Lines.Count
, и это 1
.
Я попытался удалить символ одинарной кавычки:
var
Lines : TStrings;
begin
Lines := TStringList.Create;
try
Lines.Text := WrapText('Cant format message, message file not found', 15);
ShowMessage(Lines.Text);
finally
Lines.Free;
end;
end;
И он начал оборачивать строку, как и ожидалось:
Мне интересно, почему это происходит, и как я должен делать для использованияфункция WrapText()
с такими строками?