請問有關DateTime Format 的問題 同BDE Administrator 也有關 |
尚未結案
|
SamSam1230
中階會員 發表:128 回覆:178 積分:65 註冊:2004-12-23 發送簡訊給我 |
我寫了這個
var TempS : string;
TempD : TDateTime; TempS := '30/1/2001 12:00:00'
TempD := StrToDateTime(TempS);
在我的電腦run 這一句沒有問題
但我覺得很奇怪 因為 StrToDateTime()中日期的格式應該是 MM/DD/YY HH:MM:SS
所以 temps 應該是有錯出現
但當我用在其他的電腦就有這Econverterror 出現
原因就在 MM/DD/YY HH:MM:SS 跟 DD/MM/YY HH:MM:SS
StrToDateTime 應該只接收 MM/DD/YY HH:MM:SS
當MM 大於 12 就會有問題出現
請問有大大知道是什麼地方的問題
我完全沒有方向 另外的是那個 tempS 我是從 Database 裡的table 裡的其中一個 field
而field的type 是 TimeStamp
這樣拿出來的data 都是 DD/MM/YY HH:MM:SS
那怎麼辦?
我用的是 Paradox7.0
BDE administrator 4.0
謝謝
|
shinjie
資深會員 發表:12 回覆:275 積分:287 註冊:2003-03-19 發送簡訊給我 |
|
pillar62
資深會員 發表:9 回覆:324 積分:271 註冊:2002-04-15 發送簡訊給我 |
|
deity
尊榮會員 發表:90 回覆:876 積分:678 註冊:2003-05-09 發送簡訊給我 |
引言: 我寫了這個 var TempS : string; TempD : TDateTime; TempS := '30/1/2001 12:00:00' TempD := StrToDateTime(TempS); 在我的電腦run 這一句沒有問題 但我覺得很奇怪 因為 StrToDateTime()中日期的格式應該是 MM/DD/YY HH:MM:SS 所以 temps 應該是有錯出現 但當我用在其他的電腦就有這Econverterror 出現 原因就在 MM/DD/YY HH:MM:SS 跟 DD/MM/YY HH:MM:SS StrToDateTime 應該只接收 MM/DD/YY HH:MM:SS 當MM 大於 12 就會有問題出現 請問有大大知道是什麼地方的問題 我完全沒有方向 另外的是那個 tempS 我是從 Database 裡的table 裡的其中一個 field 而field的type 是 TimeStamp 這樣拿出來的data 都是 DD/MM/YY HH:MM:SS 那怎麼辦? 我用的是 Paradox7.0 BDE administrator 4.0 謝謝您好: 小弟试了下,field的type 是 TimeStamp读出来的值,也不会是那种格式,如需转MM/DD/YY HH:MM:SS格式也行。 procedure TForm1.Button1Click(Sender: TObject); begin with query1 do begin close; sql.Clear; sql.Add('select * from table1'); open; showmessage(fieldbyname('field1').AsString); Label1.Caption :=(formatdatetime('MM"/"DD"/"YY HH:MM:SS',fieldbyname('field1').value)); end; end; 其中field1的type 是 TimeStamp;~~~静心养德~~~ |
SamSam1230
中階會員 發表:128 回覆:178 積分:65 註冊:2004-12-23 發送簡訊給我 |
我試過用在 win2000 跟 xp 的電腦上 是這樣的 一個server program , 一個client program
server program 會取database 的 data
其中一個是timestamp
server program 把data upload 到 client 當client 的os 是 win2000 的時候
那個strtodatetime 要用這('mm/dd/yyyy hh:nn:ss') 當client 的os 是 winxp 的時候
那個strtodatetime 要用這('dd/mm/yyyy hh:nn:ss') 真奇怪
|
Fishman
尊榮會員 發表:120 回覆:1949 積分:2163 註冊:2006-10-28 發送簡訊給我 |
Hi SamSam1230, 那是因為兩台電腦個日期格式設定不同所導致的,可以在程式中定義格式,如此即可避免此問題
procedure TForm1.Button1Click(Sender: TObject); var Dt : TDatetime; FormatSettings : TFormatSettings; begin FormatSettings.ShortDateFormat := ShortDateFormat; FormatSettings.LongTimeFormat := LongTimeFormat; ShortDateFormat := 'dd/mm/yyyy'; LongTimeFormat := 'hh:mm:ss'; Dt := StrToDateTime('31/12/2005 18:59:59'); ShortDateFormat := FormatSettings.ShortDateFormat; LongTimeFormat := FormatSettings.LongTimeFormat; end;你可以參考一下關於 ShortDateFormat 的 Help,Default 是抓取 Windows 設定 ---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ----------------------------------
------
Fishman |
SamSam1230
中階會員 發表:128 回覆:178 積分:65 註冊:2004-12-23 發送簡訊給我 |
|
Fishman
尊榮會員 發表:120 回覆:1949 積分:2163 註冊:2006-10-28 發送簡訊給我 |
Hi SamSam1230, Sorry !! 手頭上沒有 D4 也沒用過,所以無法回答你的問題 不過剛剛看了一下 class="code">
type
TFormatSettings = record
CurrencyFormat: Byte;
NegCurrFormat: Byte;
ThousandSeparator: Char;
DecimalSeparator: Char;
CurrencyDecimals: Byte;
DateSeparator: Char;
TimeSeparator: Char;
ListSeparator: Char;
CurrencyString: string;
ShortDateFormat: string;
LongDateFormat: string;
TimeAMString: string;
TimePMString: string;
ShortTimeFormat: string;
LongTimeFormat: string;
ShortMonthNames: array[1..12] of string;
LongMonthNames: array[1..12] of string;
ShortDayNames: array[1..7] of string;
LongDayNames: array[1..7] of string;
TwoDigitYearCenturyWindow: Word;
end;
改成下列語法試試看行不行的通
procedure TForm1.Button1Click(Sender: TObject); var Dt : TDatetime; SDF,LTF : String; begin SDF := ShortDateFormat; LTF := LongTimeFormat; ShortDateFormat := 'dd/mm/yyyy'; LongTimeFormat := 'hh:mm:ss'; Dt := StrToDateTime('31/12/2005 18:59:59'); ShortDateFormat := SDF; LongTimeFormat := LTF; end;---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ----------------------------------
------
Fishman |
SamSam1230
中階會員 發表:128 回覆:178 積分:65 註冊:2004-12-23 發送簡訊給我 |
|
Fishman
尊榮會員 發表:120 回覆:1949 積分:2163 註冊:2006-10-28 發送簡訊給我 |
|
SamSam1230
中階會員 發表:128 回覆:178 積分:65 註冊:2004-12-23 發送簡訊給我 |
|
SamSam1230
中階會員 發表:128 回覆:178 積分:65 註冊:2004-12-23 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |