From: "たけ (tk)" Date: 2001-01-05T02:10:03+09:00 Subject: [ruby-list:26983] Re: Time & Date たけ(tk)です。 Tadayoshi Funaba さん曰く。 》> 困った表現になりますが、普通は日付型として扱いたい場合には時刻部分をカッ 》> トしておけば(=00:00:00 にすれば)日付しか出なくなるので便利なわけです。 》 》んー、便利なんでしょうか。  そういわれると困ってしまいますね。なんか文化の違いを感じる。見栄とテキ トーな解釈を便利と感じる文化と、原理原則と厳密な互換性を尊重する文化の違 い。まあ、原理原則がはっきりしていれば自分で何とか出来るという面はありま すね。 》date3 のようなものの需要はあると思うのですが、Time を置き換えるのはム 》リですね。  Time の制限をなくそうという動きはないのでしょうか?。32ビットマシン でも符号付きの64ビットで実装するとか・・。 * たけ(tk)の場合、自分の誕生日を Time で表せないが残念で・・。 》> p Date.strptime( '2000-12-31' ) # nil 》> 》> では駄目で、書式を指定しなければならないんですね。 》 》もちろん。strptime とはそういうものですからね。書式は "%c" がデフォル 》トになってます。  テキトーに解釈して欲しいなぁ、と思うのは文化の違いなのだろう。  * 1/2/3 という表示では2001年2月3日か2003年1月2日か200 3年2月1日か、はたまた1900年代の話か分からないが、2001/2/3 なら2 001年2月3日に確定するはず。 》があります。ただ、date3 向けにそういう仕掛を用意することは考えています。  期待しよう。 》> * バグめっけ。 》んー、これはバグではありません。"%y" ではなく、"%Y" をつかうべきでした。 》そして、"%D" は "%m/%d/%y" ですから。  了解。 》> 》> time = Time.mktime(ParseDate.parsedate('1999-12-31')) # NG 》> 》> time = Date.new(ParseDate.parsedate('1999-12-31')) # NG 》> 》 》> 》これやると、どうしてタイムゾーンが反映されないんだ、とか、いわれるかな。 》> 》>  しかし、Date.new( 1999, 12, 31)が既に出来るのだから、変わらないの 》> では?。 》 》?? ParseDate はタイムゾーンの略名を含む配列を返します。  Date.new( 1999, 12, 31)でもタイムゾーンは反映されていないのではないか、 という趣旨でありました。 #!ruby -Ks require "parsedate" include ParseDate p parsedate "2001/1/2 0:0:0 abc" #[2001, 1, 2, 0, 0, 0, "abc", nil] これのこと?↑ p parsedate Time.now.to_s # [nil, 1, 5, 2, 0, 13, nil, 5] p Time.now # Fri Jan 05 02:00:13 東京 (標準時) 2001 * parsedate Time.now.to_s では情報が落ちてしまうんですね。 * Time.now.to_s でも "2001-01-02 02:00:13 JST" が良いと思うんだけどなぁ。 たけ(tk) ggb03124@nifty.ne.jp http://member.nifty.ne.jp/take_tk