kkamegawa's weblog

Visual Studio,TFS,ALM,VSTS,DevOps関係のことについていろいろと書いていきます。Google Analyticsで解析を行っています

Javaとの格闘

 今日も人が作ったわけわからないJavaソースとの格闘。まずはコンパイルできないことにはどうしようもありません。しかし、これがかなり難儀。バージョン変わっちゃって削られた機能や、I/Fが変わった機能が盛りだくさん(というほどでもないけど)。どうしてもいくつかコンパイルできないものがあるけれど、どうしたものか。使ってない機能だから、ソースから削っちゃうかな…。
 昨日バージョンダウンした物件をリリースしたのですが、内蔵している配信機能はファイルの日付のみをあてにしています。古いものだけど、新しい日付にすると、今一度今回の物件を無効にするときはまた新しいものを生成しなくてはなりません。それは困る。
 ということで、日付のみ変更するためにtouchが欲しくなりました。さがしたけれど、どうもぴんとくるものはなかったので、「よっしゃ」とWin32で作ろうとしたら…ファイルの日付変更するAPI忘れた。取得する方はGetAttributeEx()が使えるのだけれど、設定する方はなんだっけ?あきらめて.NET Framework使ってしまいました…ほんの15行くらい。自分用だからエラーチェックもろくにしてないし。
 touch [filename] YYYYMMDDhhmmss
 という形式で与えるのですが、こういうものを書くとき困るのが、上記のようにYYYYMMDD形式で無駄をそぎ落とされた日付をDataTimeをはじめとする、日付専門のクラスに入れるとき。4桁目までは年、さらに+2桁は月…と書くのがめんどくさい。カルチャを指定せず、文字列のみ渡したら適当に(^^;解釈してくれるってコンストラクタなかったかな。
 本日の労働は9:15〜21:30ってところ。