- ベストアンサー
ジュリアンデート
ジュリアンデートを、通常の日付に変換するのに、 簡単な方法はないでしょうか? 言語:ASP(VBScript) 知っていましたら教えてください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
う~ん・・・・そうねぇ・・・・。DateAddを使うとどうだろうか。きっと日付→ジュリアンデートにはDateDiffかDatePartを使っていると思うので、それの逆を行うわけだ。 例えば2005330というJDを日付に変換するには、 1.まず、年(前4桁)を取る 2.取った4桁(ここでは2005)を年で1月1日のDate型変数を作る 3.そいつにDateAddで(JDの下3桁-1)を足す プログラムではこんな感じかなぁ。ASPではなく、WSH版のVBSでさっと作ってみた関数と動作テストプログラムです。 Option Explicit function JtoD(j) dim y dim d y = j \ 1000 ' 前4桁 d = j mod 1000 ' 後ろ3桁 JtoD = DateAdd("y", d - 1, CDate(CStr(y) & "/01/01")) ' yyyy年1月1日からjjj日足して1日引く end function dim test test = inputbox("Input JD (yyyyjjj)") msgbox test msgbox JtoD(test)
お礼
早速のご回答、ありがとうございます。 非常に参考になりました。 ASPで以下のようなソースを作り確認しました。 ---- ソースはここから ---------------------------------------- <% dim j_date ''ジュリアン日付 dim g_date ''グレゴリオ日付 dim addDt ''加算日数 response.write "<html>" response.write "<body>" response.write "ジュリアン日付→グレゴリオ日付 変換<br><br>" j_date = "2005330" response.write "ジュリアン日付=[" & j_date & "]<br>" kijunbi = mid(j_date,1,4) & "-01-01" addDt = mid(j_date,3,3) - 1 g_date = DateAdd("d", addDt, kijunbi) response.write "グレゴリオ日付=[" & g_date & "]<br>" response.write "</body>" response.write "</html>" %> ---- ソースはここまで ----------------------------------------
補足
早速のご回答、ありがとうございます。 非常に参考になりました。 ASPで以下のようなソースを作り確認しました。 ---- ソースはここから ---------------------------------------- <% dim j_date ''ジュリアン日付 dim g_date ''グレゴリオ日付 dim addDt ''加算日数 response.write "<html>" response.write "<body>" response.write "ジュリアン日付→グレゴリオ日付 変換<br><br>" j_date = "2005330" response.write "ジュリアン日付=[" & j_date & "]<br>" kijunbi = mid(j_date,1,4) & "-01-01" addDt = mid(j_date,3,3) - 1 g_date = DateAdd("d", addDt, kijunbi) response.write "グレゴリオ日付=[" & g_date & "]<br>" response.write "</body>" response.write "</html>" %> ---- ソースはここまで ----------------------------------------