- ベストアンサー
DOSコマンドの時間取得について
DOSコマンドで時間を取得したいのですが、時間が2桁にならない時間(午前0~9の間)は、その時間を取得して時間と分の間の:を抜く作業を行おうとすると、落ちてしまいます。10時以降になると、正しく行われます。調べてみたところ、午前0~9の間はnull値が入っていることが原因だと思われます。早急な解決が求められています。どなたかご存知の方よろしくお願いします。いつもお礼が遅くて申し訳なく思っています。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
REM 日時取得 SET DT=%DATE:~-10% SET TM=%TIME:~-11% SET F_DATE=%DT:~0,4%%DT:~5,2%%DT:~8,2% REM 時刻の書式変換 9:32:08 ⇒ 09:32:08 SET F_HOUR=%TM:~0,2% IF "%F_HOUR:~0,1%" == " " SET F_HOUR=0%F_HOUR:~1,2% SET F_TIME=%F_HOUR%%TM:~3,2%%TM:~6,2% でやってみてください。 F_TIME 変数に時間にとらわれず日時が入るはずです。
その他の回答 (1)
- notnot
- ベストアンサー率47% (4900/10358)
回答No.2
おそらく、%TIME% をお使いと思いますが、先頭で set TIMEX=%TIME: =0% として、%TIMEX% を変わりに使うと良いです。(空白があれば0に置換)