全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1147
推到 Plurk!
推到 Facebook!

TStringList.Count 空字串值沒有算入count內

答題得分者是:Chance36
alice
初階會員


發表:41
回覆:49
積分:28
註冊:2002-04-30

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-03-31 17:29:24 IP:211.75.xxx.xxx 未訂閱
 
  var A,B:TStringList;
begin
  A:=TStringList.Create;
  B:=TStringList.Create;
  A.Values['A']:='1';
  A.Values['B']:='2';
  A.Values['C']:='3';
  A.Values['D']:='4';      B.Values['A']:='1';
  B.Values['B']:='';
  B.Values['C']:='';
  B.Values['D']:='';
  memo1.Lines.Add('A:' IntToStr(A.Count));
  memo1.Lines.Add('B:' IntToStr(B.Count));
發現 A.Count=4, 但B.Count=1, 為什麼? 若我要 while i < B.count do ... 就沒有辦法抓到 B.Values['B']..的空值, 因為它跳過了, 有何辦法解決呢?? 謝謝!!
ko
資深會員


發表:28
回覆:785
積分:444
註冊:2002-08-14

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-03-31 18:00:07 IP:61.221.xxx.xxx 未訂閱
alice 你好:  
引言: B.Values['A']:='1'; B.Values['B']:=''; B.Values['C']:=''; B.Values['D']:='';
注意這裡 B.Values['D']:=''; 跟 B.Values['D']:='■'; 不一樣 註: ■ 是空白鍵
------
======================
昏睡~
不昏睡~
不由昏睡~
alice
初階會員


發表:41
回覆:49
積分:28
註冊:2002-04-30

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-03-31 18:16:47 IP:211.75.xxx.xxx 未訂閱
沒錯,我的B.Values['B']:='' 是空值, 不是空白值哦!!
Chance36
版主


發表:31
回覆:1033
積分:792
註冊:2002-12-31

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-03-31 18:27:35 IP:211.20.xxx.xxx 未訂閱
alice 你好 改用如下程式碼看看
 
  var A,B:TStringList;
begin
  A:=TStringList.Create;
  B:=TStringList.Create;
  A.Values['A']:='1';
  A.Values['B']:='2';
  A.Values['C']:='3';
  A.Values['D']:='4';      B.Add('A=1');
  B.Add('B=');
  B.Add('C=');
  B.Add('D=');
  memo1.Lines.Add('A:' IntToStr(A.Count));
  memo1.Lines.Add('B:' IntToStr(B.Count));
alice
初階會員


發表:41
回覆:49
積分:28
註冊:2002-04-30

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-03-31 18:34:21 IP:211.75.xxx.xxx 未訂閱
可以了!! 謝謝!!
系統時間:2024-06-02 0:24:06
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!