如何去除 '/ '與'小數點' |
尚未結案
|
shiungyi
一般會員 發表:14 回覆:33 積分:9 註冊:2003-05-16 發送簡訊給我 |
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
begin // 去除 / TEMPSTR := StringReplace(TEMPSTR, '/', '', [rfReplaceAll]); // 去除 . TEMPSTR := StringReplace(TEMPSTR, '.', '', [rfReplaceAll]); // 去除半形空白 TEMPSTR := StringReplace(TEMPSTR, ' ', '', [rfReplaceAll]); end;--- 歡迎光臨 KTop 研究院--<-<-<@ |
shiungyi
一般會員 發表:14 回覆:33 積分:9 註冊:2003-05-16 發送簡訊給我 |
tempstr:Tstrings;
小弟將 begin
// 去除 /
TEMPSTR := StringReplace(TEMPSTR, ''/'', '''', [rfReplaceAll]);
// 去除 .
TEMPSTR := StringReplace(TEMPSTR, ''.'', '''', [rfReplaceAll]);
// 去除半形空白
TEMPSTR := StringReplace(TEMPSTR, '' '', '''', [rfReplaceAll]);
end; 加入後 ERROR MESSAGE Incompatible types:'String' and 'TStrings' 以下為小弟的程式 tempstr:=TStringList.Create;
.
while not Eof do
begin
tempstr.Add(Format(RETSTR,[T_TADE,T_ACCO,T_AMT]));
Query1.Next;
end; 發表人 - shiungyi 於 2003/09/12 11:39:31
|
hahalin
版主 發表:295 回覆:1698 積分:823 註冊:2002-04-14 發送簡訊給我 |
|
shiungyi
一般會員 發表:14 回覆:33 積分:9 註冊:2003-05-16 發送簡訊給我 |
[quote] tstringlist.strings[index]的屬性才是string型態 你必須將hargar的程式用來處理tstringlist的某一個index的strings 我改成下列方式 T_TADE:=CTCQuery1.FieldByName('BILL_DAT').AsString; T_AMT:=CTCQuery1.FieldByName('EXRATE_COST').AsString; T_AMT := StringReplace(T_AMT, ''.'', '''', [rfReplaceAll]); T_TADE := StringReplace(T_TADE , ''/'', '''', [rfReplaceAll]); tempstr.Add(Format(RETSTR,[T_TADE,T_ACCO,T_AMT])); 結果為 Record,Object or class type required
Operator not applicable to this operand type 發表人 - shiungyi 於 2003/09/12 12:16:39
|
hahalin
版主 發表:295 回覆:1698 積分:823 註冊:2002-04-14 發送簡訊給我 |
|
shiungyi
一般會員 發表:14 回覆:33 積分:9 註冊:2003-05-16 發送簡訊給我 |
|
hahalin
版主 發表:295 回覆:1698 積分:823 註冊:2002-04-14 發送簡訊給我 |
|
shiungyi
一般會員 發表:14 回覆:33 積分:9 註冊:2003-05-16 發送簡訊給我 |
|
hahalin
版主 發表:295 回覆:1698 積分:823 註冊:2002-04-14 發送簡訊給我 |
|
shiungyi
一般會員 發表:14 回覆:33 積分:9 註冊:2003-05-16 發送簡訊給我 |
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
begin // 去除 / TEMPSTR.Text := StringReplace(TEMPSTR.Text, '/', '', [rfReplaceAll]); // 去除 . TEMPSTR.Text := StringReplace(TEMPSTR.Text, '.', '', [rfReplaceAll]); // 去除半形空白 TEMPSTR.Text := StringReplace(TEMPSTR.Text, ' ', '', [rfReplaceAll]); end;--- 歡迎光臨 KTop 研究院--<-<-<@ |
shiungyi
一般會員 發表:14 回覆:33 積分:9 註冊:2003-05-16 發送簡訊給我 |
begin
// 去除 /
TEMPSTR.Text := StringReplace(TEMPSTR.Text, '/', '', [rfReplaceAll]);
// 去除 .
TEMPSTR.Text := StringReplace(TEMPSTR.Text, '.', '', [rfReplaceAll]);
// 去除半形空白
TEMPSTR.Text := StringReplace(TEMPSTR.Text, ' ', '', [rfReplaceAll]);
end; DEAR hagar
照您的做法
確實能解決小數點的問題
但是日期還是有問題
2003/09/12-->2003912
遇到個位數的月份還是沒補0
而金額欄位 如
35463.678-->35463678
並不是所要之
03546367800 謝謝 發表人 - shiungyi 於 2003/09/13 12:19:38
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
|
shiungyi
一般會員 發表:14 回覆:33 積分:9 註冊:2003-05-16 發送簡訊給我 |
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
|
shiungyi
一般會員 發表:14 回覆:33 積分:9 註冊:2003-05-16 發送簡訊給我 |
begin
T_Date := CTCQuery1.FieldByName('T_Date').AsString; if T_Date[7] = '/' then // 月份補 0
Insert('0', T_Date, 6);
if (T_Date[8] = '/') and (Length(T_Date) = 9) then // 日期補 0
Insert('0', T_Date, 9);
end; 照上述改正後
[Error] Unit1.pas(4882): Too many actual parameters
|
shiungyi
一般會員 發表:14 回覆:33 積分:9 註冊:2003-05-16 發送簡訊給我 |
begin
T_Date := CTCQuery1.FieldByName('T_Date').AsString; if T_Date[7] = '/' then // 月份補 0
Insert('0', T_Date, 6);
if (T_Date[8] = '/') and (Length(T_Date) = 9) then // 日期補 0
Insert('0', T_Date, 9);
end; DEAR hagar 改成
System.Insert( '0',pc_rele_time, 6 );後
日期欄位的問題已解決
因為這段程式是置於with CTCQuery1 do之下
所以DELPHI一直把
Insert('0', T_Date, 6);
當成TDateSet.Insert.Procedure 目前剩下數字欄位的空白補"0" 與小數點消去後的數字位移問題
這些小弟會自行研究
在此謝謝hagar與hahalin的協助
|
payne
初階會員 發表:1 回覆:40 積分:38 註冊:2002-04-19 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |