ご存知の方、お教えいただきたく思います。
現在Delphiを勉強中ですが、数値を文字に変換する際、前ZEROを
埋め込みたく、下記のようにコーディングしましたが、デバッグで結果を見ると
”(NULL??)となっています。
どうしてでしょうか?
よろしくお願いします。
Procedure test_rtn;
var
test : String;
test1: Integer;
test1 := 12;
test := FormatFloat('0000',test1);
end;
このように記述していますが、testの中に'0012'が入ってくることを期待している
のですが、、どうしても”だけになってしまいます。
デバッグで見るタイミングが間違っていませんか?
test := FormatFloatにブレークポイントを置くと、ブレークポイントのおいた行の「前の行」まで実行されています。
ShowMessage(test);
としてみてはどうでしょう。ダイアログで出るはず。
# ループで呼ばれる場合は注意です。
変数型の問題で、Test1はIntegerではなく、浮動小数点値でないとエラーになります。'0012'の様にするには、Format('%.4d',[Test1])でどうでしょうか?詳しくはHelpで。
ツイート | ![]() |