Visual STUDIO 2008を手に入れたので、ちょっとしたツールを作ってみた。今回のお題はデジカメで撮った写真を撮った日付ごとにフォルダを作成して、その中にコピー(もしくは移動)するという物。つまりマイピクチャに無造作に放り込んだファイルを、日付ごとに整理してくれるソフトだ。
気になった物があるとすぐに携帯やデジカメで撮るのだが、たいてい整理するのはかなり後になってからなので、その頃にはなんで撮ったのか忘れてしまうんだよね。だけど日付ごとに整理してあると、あとは画像閲覧ソフトのVixで中を見ながらフォルダ名の後ろに内容を簡単に書いていくだけで整理した気になるから、あら不思議。最近だとこんな感じ。
・20080816(雷を動画撮影)
・20080819(ブドウ狩り&明野のひまわり)
・20080822(長瀞でかき氷)
・20080904(渋谷ブックファースト跡地)
・20080906(早川園でブドウ狩り)
実はこれと同じ動作のソフトをすでにPerlで組んであって、大変重宝している。だけどPerlゆえにコマンドラインで動作するので、コピー元とコピー先を一々入力するのは面倒くさいのが問題だった。なので、テストプログラム一発としてこいつを選択。とりあえずのファーストバージョンはこんな感じ。
日付に関してはExif情報があればそれを利用し、なければファイルの最終更新日を利用した。しかしC#でのプログラミングは本当に楽だね。このプログラムもコアの部分は100行くらいしかない。実際にはコピー中にESCキーで止められるようにしたり、進捗を表示したり、フォルダ名をレジストリに保存したり色々やっているので200行近くになっているが。
特に楽だと感じたのはプログラミングレスでも、高機能なGUIが出来るということ。例えばエクスプローラのアドレスバーに"C:\Pro"まで打ち込むと"C:\Program Files"と補完してくれるサジェスト機能があるが、こんなのはテキストボックスのプロパティをちょこっといじるだけで簡単に出来たりする。
またJavaの主要なオブジェクトと名前も使い方もそっくりなので、VBなどのイベントドリブン(古いな・・・)のプログラムを書いたことがあって、Javaにそれなりに精通していれば教科書なしでどんどん作れると思う。自分は秀和システム社の「Visual C# 2005 逆引き大全500の極意」を片手において作ったが、ある程度わかる人はこれだけでそれなりの物が作れてしまう。
ちなみにPerl版の作成時間は20分。C#版の方は正味で3~4時間くらい。まぁうちの相方にかなりサポートしてもらったりもしてるのだが、初物としてはこんな物か。しばらくこのツールを熟成して楽しみたいと思う。
気になった物があるとすぐに携帯やデジカメで撮るのだが、たいてい整理するのはかなり後になってからなので、その頃にはなんで撮ったのか忘れてしまうんだよね。だけど日付ごとに整理してあると、あとは画像閲覧ソフトのVixで中を見ながらフォルダ名の後ろに内容を簡単に書いていくだけで整理した気になるから、あら不思議。最近だとこんな感じ。
・20080816(雷を動画撮影)
・20080819(ブドウ狩り&明野のひまわり)
・20080822(長瀞でかき氷)
・20080904(渋谷ブックファースト跡地)
・20080906(早川園でブドウ狩り)
実はこれと同じ動作のソフトをすでにPerlで組んであって、大変重宝している。だけどPerlゆえにコマンドラインで動作するので、コピー元とコピー先を一々入力するのは面倒くさいのが問題だった。なので、テストプログラム一発としてこいつを選択。とりあえずのファーストバージョンはこんな感じ。
日付に関してはExif情報があればそれを利用し、なければファイルの最終更新日を利用した。しかしC#でのプログラミングは本当に楽だね。このプログラムもコアの部分は100行くらいしかない。実際にはコピー中にESCキーで止められるようにしたり、進捗を表示したり、フォルダ名をレジストリに保存したり色々やっているので200行近くになっているが。
特に楽だと感じたのはプログラミングレスでも、高機能なGUIが出来るということ。例えばエクスプローラのアドレスバーに"C:\Pro"まで打ち込むと"C:\Program Files"と補完してくれるサジェスト機能があるが、こんなのはテキストボックスのプロパティをちょこっといじるだけで簡単に出来たりする。
またJavaの主要なオブジェクトと名前も使い方もそっくりなので、VBなどのイベントドリブン(古いな・・・)のプログラムを書いたことがあって、Javaにそれなりに精通していれば教科書なしでどんどん作れると思う。自分は秀和システム社の「Visual C# 2005 逆引き大全500の極意」を片手において作ったが、ある程度わかる人はこれだけでそれなりの物が作れてしまう。
ちなみにPerl版の作成時間は20分。C#版の方は正味で3~4時間くらい。まぁうちの相方にかなりサポートしてもらったりもしてるのだが、初物としてはこんな物か。しばらくこのツールを熟成して楽しみたいと思う。
#
by jinotaro
| 2008-09-12 01:10
| pc