やりたいこと検索

日付フォーマットを「YYYYMMDD」へ変更する(例 2017/06/28 → 20170628)

 

目次

 

「YYYY/MM/DD」を「YYYYMMDD」へ変更する

変数「date」には現在の日付が入っていて、「%date%」とすることでその値を取り出せます。しかし、この表示は「YYYY/MM/DD」の形で格納されており、ファイル名やフォルダ名には使用できない文字「/」が含まれています。

以下、変数「date」の中身を表示させた例です。

日付フォーマットを「YYYYMMDD」へ変更する(例 20170628 → 20170628) 変数「date」の中身を確認

そこで、まずは日付フォーマットを「YYYY/MM/DD」から「YYYYMMDD」へ変更するバッチファイルプログラムを次節で紹介します。

変換例: 2017/06/28 → 20170628

 

数字部分を切り取る

変換方法は文字列「YYYY/MM/DD」からそれぞれ「YYYY」、「MM」、「DD」の数字の部分だけを切り取ってきて、再び繋ぎ合わせるというやり方です。

まず、それぞれ「YYYY」、「MM」、「DD」を切り出すバッチファイル(kiridasi.bat)は以下のようになります。

4行目で変数「date」の確認をしています。

7行目から9行目で、変数「date」から必要な部分だけを切り取り、それぞれ年「YYYY」、月「MM」、日「DD」に代入しています。文字列の切り取りの基本は以下のような形式で書きます。

例えば、7行目の「YYYY」であれば、0文字飛ばし(つまり何も飛ばさず初めの文字から)、1文字目から4文字分を切り取るという指示になっています。文字列の切り取りについては、「文字列を自在に切り取る -やりたいことから検索-」に詳しく解説しています。

12行目以下で切り取った文字列を表示して確認を行っています。

以下、実行結果です。

日付フォーマットを「YYYYMMDD」へ変更する(例 20170628 → 20170628) 変数「date」から必要な数字部分だけを抜き出す

 

文字列を繋げる

最後に、それぞれ切り取った文字列を繋げて「YYYYMMDD」形式にします。

前節で作ったバッチファイル「kiridasi.bat」を改良しましょう。…といっても、最後に変数「YYYYY」、「MM」、「DD」を繋げる一文を書けば終了です。

以下に、最終的なバッチファイル(new_date.bat)を示します。

17行目で文字列を繋げて、変数「new_date」に「YYYYMMDD」を代入しています。以上で完成です。

以下、このバッチファイルを実行した結果です。

日付フォーマットを「YYYYMMDD」へ変更する(例 20170628 → 20170628) 「YYYYMMDD」形式の完成

 

Windowsバッチファイル初心者へ向けた入門書を作成しました


Windowsバッチファイル初心者の方へ向けた入門書(PDF)を作成しました。


・初めてWindowsバッチファイルを勉強してみようと思っている方

・使ったことはあるが一から基礎を学び直したい方


へ向けて丁寧な解説を行っています。


「全くプログラムを知らない方でも、この入門書を読んだ後には、Windowsバッチファイルの中級者レベルになれるように」をコンセプトに執筆したものです。


この本を読めば、バッチファイルを使ったファイルやフォルダの操作に関しては一通りのことができるようになります。そうなればもう十分中級者と呼べるレベルですので、あとは自分のやりたいことを実現しようとする中で徐々に知識を蓄えていくだけですぐに上級者へなれるでしょう。


詳しくみる

関連ページ

コメントを残す