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

Memo擷取一問!

尚未結案
piggy213
一般會員


發表:16
回覆:6
積分:4
註冊:2002-12-27

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-08-26 21:34:33 IP:203.67.xxx.xxx 未訂閱
請教各位前輩: 今天我有一個A欄位是這樣的Format--(^為空格,兩個空格則^^) T01^^0.2^^^^3 T02^^^0.3^^^^123 T03^^0.1^^^Lot^Number 而這欄位型態為Long, 我要只取這內容中第三個欄位數據最大的該行資料--如上例為T02^^^0.3^^^^123 原則上我是希望將它丟到Memo裡,再去取出來! 我已經會把它丟到Memo內,但是要怎樣取出我要的東西呢? ps.資料可能會到T04....以上 謝謝!!
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-08-26 22:15:05 IP:63.84.xxx.xxx 未訂閱
您好!    請問您是要取出什么東東? 將Memo中的資料取出到哪里? 有關Memo元件之屬性如下:    Memo.Text屬性即可取出所有的資料 Memo.Lines[N]屬性即可取出第N+1行的資料 Memo.Lines.Text屬性也可取出所有的資料, 其繼承自TString物件    您丟在Memo里的資料是什么樣的?
是   T01^^0.2^^^^3
     T02^^^0.3^^^^123
     T03^^0.1^^^Lot^Number 
還是 T02^^^0.3^^^^123
至于前者即多行資料的取出應可利用迴圈的方法來做 ===================== 努力,相信會獲得美麗! 忻晟
------
忻晟
piggy213
一般會員


發表:16
回覆:6
積分:4
註冊:2002-12-27

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-08-26 22:43:38 IP:211.74.xxx.xxx 未訂閱
不好意思! 我丟在MEMO裡的是整個欄位的資料 如右-- T01^^0.2^^^^3        T02^^^0.3^^^^123        T03^^0.1^^^Lot^Number  而我要取出的值是T02及0.3及123放在Excel裡! 必須去搜尋第二個空格後的值3,123,Lot Number比較,因為123最大,然後取出123及其對應的值T02及0.3。 不知道這樣清楚嗎? 迴圈我不知道應該如何寫!        
引言: 您好! 請問您是要取出什么東東? 將Memo中的資料取出到哪里? 有關Memo元件之屬性如下: Memo.Text屬性即可取出所有的資料 Memo.Lines[N]屬性即可取出第N 1行的資料 Memo.Lines.Text屬性也可取出所有的資料, 其繼承自TString物件 您丟在Memo里的資料是什么樣的?
是   T01^^0.2^^^^3
     T02^^^0.3^^^^123
     T03^^0.1^^^Lot^Number 
還是 T02^^^0.3^^^^123
至于前者即多行資料的取出應可利用迴圈的方法來做 ===================== 努力,相信會獲得美麗! 忻晟
sos_admin
版主


發表:121
回覆:697
積分:768
註冊:2003-07-23

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-08-27 08:30:20 IP:61.155.xxx.xxx 未訂閱
今天我有一個A欄位是這樣的Format--(^為空格,兩個空格則^^)    //A欄位是什么数据,就是下面的吗? T01^^0.2^^^^3 T02^^^0.3^^^^123 T03^^0.1^^^Lot^Number //Lot^Number是什么意思,并且中间好像有个^,又是什么意思? 而這欄位型態為Long, //Long是什么意思,数据是Long型的吗?不可能哦 我要只取這內容中第三個欄位數據最大的該行資料 //是不是比较〔3、123、....〕 原則上我是希望將它丟到Memo裡,再去取出來! 我已經會把它丟到Memo內,但是要怎樣取出我要的東西呢? //现在是不是假设已经资料放在memo中了? 请您将问题将的清楚些!
pedro
尊榮會員


發表:152
回覆:1187
積分:892
註冊:2002-06-12

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-08-27 09:53:27 IP:210.61.xxx.xxx 未訂閱
給您一段程式碼參考
var
  sl:TStringList;
  ssort:TStringList;
  i:Integer;
  maxstr:string;
begin
  memo1.Lines.Add('T01  0.2    3');
  memo1.Lines.Add('T02  0.3    123');
  memo1.Lines.Add('T01  0.1    20');
  //以空格為切割元素
  sl:=TStringList.Create;
  sl.Delimiter:=#32;
  sl.DelimitedText:=memo1.Text;
  ssort:=TStringList.Create;
  // 依第三個值來排序
  for i:=0 to sl.Count-1 do
  begin
    if (i mod 3)=2 then
      ssort.Add(sl.Strings[i] ' ' IntToStr(i div 3));
  end;
  ssort.Sort; // 最前面的是最大值
  sl.Clear;
  sl.DelimitedText:=ssort.Text;
  // 糾出最大值的那一列字串
  maxstr:=memo1.Lines.Strings[StrToInt(sl.Strings[1])];
  showMessage(maxstr);
  memo2.Lines.Assign(ssort);
  ssort.Free;
  sl.Free;
end;
系統時間:2024-05-18 12:24:45
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!