掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
日付時間関数の形式相違によるエラー回避方法 (ID:21788)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
む様、早速ありがとうございます。 具体的な質問でなかったようなのでコードを書かせていただきます。 procedure TForm1.Button2Click(Sender: TObject); var str:string; d:tdatetime; begin str:='03-APR-05 01:33:09'; // 1--駄目 str:='03/05/2005 01:33:09'; // 2--駄目 str:='05/05/03 01:33:09'; // 3--OK str:='2005/05/03 01:33:09'; // 4--OK str:=July,4 1776 01:33:09'; // 5--駄目 d:=strtodatetime(str); edit1.Text:=datetimetostr(d); end; 上記の「駄目」で結果を書かせようとすると「日付または時刻ではありません」というエラーが出てしまいます。不特定のPCで作成された日付時刻が入ったデータを不特定な他の使用者がそのデータを使って処理するというものです。どのような日付形式のデータでもエラーとならないように処理できるようにしたいというのが質問の内容です。よろしくお願いします。 ちなみにSecondSpanは次のようにして使っています。(これを作ったときはまだRound関数など知りませんでしたので--失笑-- Delphiでは時間差を 求めても差が正か負か判定できない?のには驚きつつCompareDatetimeで補っていますがスマートなやり方はあるのでしょうか?) procedure Jikansa(TT1:tdatetime; TT2:tdatetime); var kstr:string; begin kstr:=floattostr(int(secondSpan(Tt2,Tt1)+0.5)); tdiff:=strtoint(kstr); //グローバル if comparedatetime(Tt2,Tt1)<0 then tdiff:=-tdiff; end;
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.