人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

今の日時から、週のはじめの日時(日曜日)を割り出したいのですが、ruby で簡単に書くのはどうするといいのでしょうか? 下記に ruby でつくったスクリプトがあるのですが、もっと簡単にできそうです。

start = Time.mktime(Time.now().strftime("%Y").to_i, 1, 1, 0, 0, 0).to_i
t = ((Time.now().strftime("%W").to_i)-1) * 7 * 86400
puts Time.at(start+t).strftime("%Y%m%d")


●質問者: kaiketsu
●カテゴリ:コンピュータ インターネット
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● a-kuma3
●50ポイント
t = Time.now

sun = t - t.wday * 24 * 60 * 60

puts "#{t} --> #{sun}"

試した結果です。
http://ideone.com/DAK0S

一応、マニュアルのリンクも貼っておきます。
http://doc.ruby-lang.org/ja/1.9.3/class/Time.html


2 ● Cherenkov
●50ポイント

http://ideone.com/2lUpS

require 'date'
t = Date.today
sun = t - t.wday #1.9.2以上なら t.prev_day(t.wday) も。
puts sun.strftime("%Y%m%d")

参考:Date - Rubyリファレンスマニュアル

関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ