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

时间:2011-07-02 17:47:40

标签: delphi char line-breaks

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

例如,string是

  

__ VIEWSTATE = / wEPDwULLTIwMTY5NDMyMDAPZBYCZg9kFgICAQ9kFgxmD2QWAmYPFgIeC18hSXRlbUNvdW50AgMWBgIBD2QWAmYPFQEiPG5vYnI + PHNwYW4 + 0JLRhdC + 0LQ8L3NwYW4 + PC9ub2JyPmQCAw9kFgJmDxUBTDxub2JyPjxhIGhyZWY9J3NpZ251cC5hc3B4JyB0YXJnZXQ9J19zZWxmJz7QoNC10LPQuNGB0YLRgNCw0YbQuNGPPC9hPjwvbm9icj5kAgUPZBYCZg8VAUk8bm9icj48YSBocmVmPSdhYm91dC5hc3B4JyB0YXJnZXQ9J19zZWxmJz7QmNC90YTQvtGA0LzQsNGG0LjRjzwvYT48L25vYnI + ZAICD2QWBAIBDxYCHwACBRYKZg9kFgJmDxUBHjxsaT48Yj7QmtC

现在我在memo1上添加一行并获取此信息:

WTF

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

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

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

P.S。我来自俄罗斯,很抱歉英语不好。

2 个答案:

答案 0 :(得分:6)

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

答案 1 :(得分:1)

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

SysUtils.pas单元中的

WrapText()函数。

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

例如:

sOutput := WrapText(sInput,#13#10,['+'],100);