2011-10-19 15 views
0

CSVファイルの各行について、私のアプリケーションは、各変数を読み込み、GetDataItemメソッドを使用してそれらをテーブルに書き込むメソッドを呼び出す必要があります。例えばDelphi FormatDateTime例外

Var 
Item: String; 
Tmp: String; 
Rdate: String; 
TmpDateTime: TDateTime; 

begin 
Table1.Append' 
Tmp := GetDataItem(Data, Item); {Ignore} 
Tmp := GetDataItem(Data, Item); {Ignore} 
Tmp := GetDataItem(Data, Item); {Members ID} 
Table1.FieldByName('Member ID').AsString := UpperCase(Tmp); 
TmpDateTime := StrToDateTime(etDataItem(Data, Item)); 
Table1.FieldByName('Arrival Date').AsString := FormatDateTime('dd/mm/yyyy',TmpDateTime); 
Table1.FieldByName('Arrival Time').AsString := FormatDateTime('hh:mm:ss',TmpDateTime); 
... 
Table1.Post; 

これは、yyyymmdd形式のDateTimeスタンプからReverseDateを生成する必要があることを除いて、これはうまくいきます。しかし、timestamp変数を再度使用しようとすると、例外がスローされるようです。

RDate := FormatDateTime('yyyy',TmpDateTime) + FormatDateTime('mm',TmpDateTime) + FormatDateTime('dd',TmpDateTime); 

または

RDate := FormatDateTime('yyyymmdd',TmpDateTime); 

私は、日付と時刻の変数を複製し、代わりにその上で作業しようとした、またはDateTimeの文字列を分割するが、任意の更なる操作が例外時に実行をスローするかのようだきました。

EDIT:まで文字を読み、

EAccessViolation in the module 'ImpWintacs.exe' at 000749DA. Access violation at address "000749DA" in module 'ImpWintacs.exe'. Read of address 00C1FDF8. 

おかげ

+3

スローされた例外は何ですか? – ain

+0

"実行時に例外をスローする"は、例外の種類とエラーメッセージがなければ意味がありません。 「私のコンピュータは動作しません。どのように修正できますか? - それはUSBケーブルの場合は、問題は、HDDや破損したコンデンサが故障している場合よりもはるかに簡単です。エラーまたは例外が発生した場合は、メモリアドレスを含む* Exact *エラーコードとエラーメッセージを与えます。ヘルプが必要な場合は、問題を解決するために手早く提供することが簡単になります。 –

+0

私は謝罪します。私はDelphiを初めて使いました。この場合、例外の印刷方法はわかりませんでした。これは今では正常に動作しますが、同じCSVファイルとデータベースファイルを持つ私の他のXP PCではコンパイルされていません。最新の例外を編集として追加しましたが、ここにはあります: モジュール 'ImpWintacs.exe'の000749DAでのEAccessViolation。モジュール 'ImpWintacs.exe'のアドレス「000749DA」のアクセス違反。アドレス00C1FDF8の読み出し。 – notidaho

答えて

0

私はCSVから次の変数を読み取るために使用した方法:謝罪は、私のXPマシン上で、私は今、例外を取得次のカンマ。 CSVの最後の変数にカンマが付いていませんでした。とにかく最後の変数は必要ないので、私はそれを読まないことにしました。

関連する問題