在TMemo中使用加号(+)字符进行自动换行

问题描述 投票:2回答:2

在我的字符串中,我有一个加号(+)字符。

例如,字符串是

__VIEWSTATE = / wEPDwULLTIwMTY5NDMyMDAPZBYCZg9kFgICAQ9kFgxmD2QWAmYPFgIeC18hSXRlbUNvdW50AgMWBgIBD2QWAmYPFQEiPG5vYnI + PHNwYW4 + 0JLRhdC + 0LQ8L3NwYW4 + PC9ub2JyPmQCAw9kFgJmDxUBTDxub2JyPjxhIGhyZWY9J3NpZ251cC5hc3B4JyB0YXJnZXQ9J19zZWxmJz7QoNC10LPQuNGB0YLRgNCw0YbQuNGPPC9hPjwvbm9icj5kAgUPZBYCZg8VAUk8bm9icj48YSBocmVmPSdhYm91dC5hc3B4JyB0YXJnZXQ9J19zZWxmJz7QmNC90YTQvtGA0LzQsNGG0LjRjzwvYT48L25vYnI + ZAICD2QWBAIBDxYCHwACBRYKZg9kFgJmDxUBHjxsaT48Yj7QmtC

现在我添加一行到memo1并得到这个:

Delphi在随机位置插入新行。我试图删除所有行break:

viewstate:=StringReplace(viewstate, #10#13, ' ', [rfReplaceAll]);
viewstate:=StringReplace(viewstate, #13#10, ' ', [rfReplaceAll]);
viewstate:=StringReplace(viewstate, #10, ' ', [rfReplaceAll]);
viewstate:=StringReplace(viewstate, #13, ' ', [rfReplaceAll]);

但它没有结果。它是什么?

附:我来自俄罗斯,很抱歉英语不好。

delphi char line-breaks
2个回答
6
投票

德尔福没有添加换行符。该备忘录在分隔符(例如+)中添加了视觉软断点。将备忘录的WordWrap属性设置为false,它应该解决问题。


1
投票

仅供参考,要将文本包装在特定字符上,您可以使用

在SysUtils.pas单元中的WrapText()函数。

function WrapText(const Line, BreakStr: string; const BreakChars: TSysCharSet;
  MaxCol: Integer): string;

例如:

sOutput := WrapText(sInput,#13#10,['+'],100);
© www.soinside.com 2019 - 2024. All rights reserved.