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

[Delphi]請問Variant 的型別要如何轉換?

答題得分者是:ha0009
cherry
一般會員


發表:16
回覆:26
積分:8
註冊:2002-06-28

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-07-14 17:23:43 IP:211.23.xxx.xxx 未訂閱
大家好:    請問Variant 的型別要如何轉換?  因為要把資料依序填入 RichEdit....    1.首先把要處理的資料存成Record。 如下    type   TData =   record     Name: String;     ID: Integer;     Result: String;     Value: array of Variant; //有字串, 浮點數, 整數等等   end;    2.再來將資料填入RichEdit1    for  j := 0 to High(Data_Item[iOrder].ResultData[i].Value) do     RichEdit1.Lines.Add(Data_Item[iOrder].ResultData[i].Value[j]);    3.有想到要用format 或  IsNumeric 來判斷   試過之後發現不可行    請問該怎麼做< >< > Cherry
ha0009
版主


發表:16
回覆:507
積分:639
註冊:2002-03-16

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-07-14 19:29:51 IP:61.30.xxx.xxx 未訂閱
你好: Variant 轉換成字串除了 NULL 會產生錯誤外,其餘型別都可正常轉換。 所以你只要作 Value <> NULL 的判斷既可。詳細轉型規格請打入variant conversion rules, 查詢。
cherry
一般會員


發表:16
回覆:26
積分:8
註冊:2002-06-28

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-07-15 09:24:57 IP:211.23.xxx.xxx 未訂閱
感謝ha0009的回答 我試了一下... if Data_Item[iOrder].ResultData[i].Value[j] <> '' then RichEdit1.Lines.Add(''); 這樣子的狀況會出現 "Could not onvert variant of type(string) into type(double)" 請問要怎麼處理? 查help的"Variant type conversions" 有看沒有懂耶.. 請你再說明一下好嗎??? 謝謝~
ha0009
版主


發表:16
回覆:507
積分:639
註冊:2002-03-16

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-07-15 11:15:56 IP:202.39.xxx.xxx 未訂閱
你好: 要判斷 Variant 內部的型別可用 VarType 函式取得。詳細資料可以打關鍵字 VarType function 轉換表的 Y 軸代表轉換來源, X 軸代表轉換結果,X 與 Y 的交集點代表轉換過程。 例如 我要將 Real 轉為 Bolean 時,如果數值是 0 則輸出 False 其餘輸出 True。 這樣說明不曉得你看的懂嗎 < src="http://sourceprovide.deepen.com.tw/K_Top/bp.gif">
cherry
一般會員


發表:16
回覆:26
積分:8
註冊:2002-06-28

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-07-15 11:27:56 IP:211.23.xxx.xxx 未訂閱
有的... 這次看懂了~ 謝謝ha0009    這次多加了一個VarNull判斷 資料就沒問題啦~  >
系統時間:2024-05-09 5:30:44
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!