您的位置:首页 > 编程语言 > Delphi

Delphi中TStringlist.count一个奇怪问题及其解决

2009-02-21 20:35 337 查看
TStringlist 的数据为直接读文本文件获得,或通过从 idTcpHttp 协议从网网站的网页取得。

var sHtml: TStringList;

sHtml := TStringList.Create;

sHtml.Add(数据);

iCouter := sHtml.Count;

虽然数据里有多行文本,这时 iCouter 的值为 1!为了绕过这个问题,加一个 Momo 控件,修改为以下语句:

MemoHtml.Lines.Clear;

MemoHtml.Text := sHtml.Text;

iCouter := MemoHtml.Lines.Count;

就能正确取到文本的行数。进一部分析发现,只要从文本文件获取的字符串里有回车、换行符,TStringList.Count 就不能取得正确的行数。不知道本来就是这个特性,还是 Delphi7.0 的 Bug?

解决:

sHtml.Text := (数据);

iCouter := sHtml.Count;

即可。TStringList.Add 方法不处理回车换行。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息