[#26966] Time & Date — " たけ (tk)" <ggb03124@...>
Time と Date についていくつか質問させてください。
ふなばです。
たけ(tk)です。
ふなばです。
たけ(tk)です。
まつもと ゆきひろです
たけ(tk)です。
まつもと ゆきひろです
とみたです。
[#26972] RTtool& コンバータ — rubikitch <rubikitch@...>
るびきちです。
[#26988] where's racc binary package — Minero Aoki <aamine@...>
あおきです。
[#26996] cgi.rb で繰り返しができない — Fujikawa Norihide <tensyuu@...>
てんしゅう@Ruby歴1ヶ月です。
[#27006] $= — "TAKAGI, Hiromitsu" <takagi@...>
ごぶさたです。
新井です。
新井です。
わたなべです.
新井です。
From: Koji Arai <JCA02266@nifty.ne.jp>
新井です。
なひです。
新井です。
まつもと ゆきひろです
なひです。
新井です。
前田です。
なひです。
[#27012] load method — Masaki Suketa <CQN02273@...>
助田です。
まつもと ゆきひろです
[#27023] Array#sum — " たけ (tk)" <ggb03124@...>
Array#sum ってあっても良さそうではありませんか?。
[#27050] BigNum#modulo problem? — Ogino Junya <ogino@...>
荻野です。
[#27056] タイムゾーンの設定について教えて下さい。 — 関口久之 <sekiguci@...>
関口と申します。いつもお世話になっております。
In the message <200101091140.1316718489@u250120.cmg.ts.fujitsu.co.jp>,
[#27061] Ruby/Python with ruby 1.6.2 — akira yamada / やまだあきら <akira@...>
わたなべです.
わたなべです.
[#27079] make mod_ruby failed — h-isikaw@...
いしかわ@NIMSと申します
[#27144] RWiki + CVS — "Akinori MUSHA" <knu@...>
ruby-dev に振り直します。フォローはこちらにお願いします。
[#27146] filename transfer. — Katsuya Tanaka <tanaka@...>
わたなべです.
わたなべです.
[#27179] [PATCH] net/http 1.2.0 — OHSHIMA Ryunosuke <ryu@...>
大島です。
[#27180] — "yoppei" <t98526ys@...>
初めまして。慶応大の鈴木と申します。
[#27184] HP-UX で configure 失敗( ruby-1.6.2) — tkadowak@...
門脇と申します。
[#27210] 検索パターンが更新されない。 — Katsuya Tanaka <tanaka@...>
[#27219] do ... end & { ... } — "K.Kosako" <kosako@...>
ブロックを構成するdo ... end と{ ... } の違いについて、
At Thu, 18 Jan 2001 13:32:24 +0900,
まつもと ゆきひろです
Yukihiro Matsumotoさんの<979801790.788262.21748.nullmailer@ev.netlab.zetabits.com>から
新井です。
まつもと ゆきひろです
新井です。
まつもと ゆきひろです
まつもと ゆきひろです
[#27238] Thread.new { sleep } — TAKEUCHI Hideki <take@...>
TAKEUCHI Hidekiさんの<200101190714.QAA19344@deirdre.krc.sony.co.jp>から
[#27253] break from proc-closure — Masatoshi SEKI <m_seki@...>
まつもと ゆきひろです
[#27258] Array#sort! — Masaki Suketa <CQN02273@...>
助田です。
[#27271] media watch 2001.01.18 — Noritsugu Nakamura <nnakamur@...>
渡辺哲也です。
こんにちは
From: WATANABE Tetsuya <tetsu@jpn.hp.com>
助田です。
ひがきです。
From: HIGAKI Masaru (ひがき まさる) <mash@as.airnet.ne.jp>
At Sun, 28 Jan 2001 02:25:15 +0900,
[#27272] 掲示版を作ってみた — Fujikawa Norihide <tensyuu@...>
てんしゅう@Vine Linux2.1です。
[#27286] Ruby -e "puts '["]' " — "たけ(tk)" <ggb03124@...>
Ruby -e "puts '["]' "
こんにちは、なかむら(う)です。
たけ(tk)です。
まつもと ゆきひろです
こんにちは、なかむら(う)です。
[#27323] drb as research subject — YANAGAWA Kazuhisa <kjana@...>
drb 関連のあれこれをちょっとながめていて,「スクリプト言語における分散
From: YANAGAWA Kazuhisa <kjana@os.xaxon.ne.jp>
[#27327] Haiku — TAKAI Naoto <takai@...>
こんばんは、高井といいます。
[#27349] NHK 放映 — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
Yukihiro Matsumotoさんの
At Mon, 29 Jan 2001 10:27:37 +0900,
In the message <86snm2obtz.wl@archon.local.idaemons.org>,
原です。
原さん wrote:
原です。
渡辺哲也です。
松永です。
[#27424] Cygwin + Oracle モジュールで dlopen() エラー — "IKAGAWA, Kauztomo" <k_ikagawa@...>
いかがわと申します。
[ruby-list:26976] Re: Time & Date
たけ(tk)です。
Tadayoshi Funaba さん曰く。
》ふなばです。
早速ありがとうございます。
もともと、なんでこのような質問をしたかというと、データベースに入ってい
る DateTime 型のデータを Ruby に翻訳しようと思ったら、Time も Date も使
えなかった、ということなのです。それはそれとして・・。
》> 1 なぜ Time と Date があるのか?。Time の時刻部分がない物が Date では
》> ないのか?。
》
》んー、それはどうでしょう。
》> 4 Time で時刻部分をカットするメソッドはないのか?。
》
》カットとは?
どうでしょう?。理論的には分かりませんが Delphi の DateTime 型のデフォ
ルトの文字列表現(DateTimeToStr)では、時刻部分が 00:00:00 のときには
ymd だけを文字列にするようになっています。これだと24時間のうち1秒ほど
困った表現になりますが、普通は日付型として扱いたい場合には時刻部分をカッ
トしておけば(=00:00:00 にすれば)日付しか出なくなるので便利なわけです。
Date3 で「日付」だけを扱いたいときには便利ではなかろうか?。
date.to_s
# (Date2) "2000-12-31"
# (Date3) "2000-12-31T12:00:00,0Z"
》ちなみに、date2 パッケージに date3.rb というものがあります。実験的なも
》のですが、時刻もあらわせる Date です。
これが進化すれば Time の置き換えに使えそうですね。
》parsedate でもいいと思うのですが、date[23] では、strptime.rb を持って
》いますし、
Date#strftime も使えるんですね。知らなかった。
手順:
(1) date2.2.2 をダウンロードして解凍。
(2) strftime.rb をライブラリパスにコピー
(3) require "strftime" を追加。
strptime の方は
p Date.strptime( '2000-12-31' ) # nil
では駄目で、書式を指定しなければならないんですね。
p Date.strptime( '2000-12-31' , '%F' ) # {:mday=>31, :mon=>12, :year=>2000}
それと、Hash を返すだけで Date オブジェクトは作られない。さらに、その
Hash を Date.new に送っても作ってくれない?。
p Date.new(Date.strptime( '2000-12-31' , '%F' )) # NG
−−
* バグめっけ。
p Date.strptime( '2000/12/31' , '%y/%m/%d' )
# {:mday=>31,:mon=>12, :year=>3900}
p Date.strptime( '12/31/2000' , '%D' )
# {:year=>3900, :mday=>31,:mon=>12}
−−
》> time = Time.mktime(ParseDate.parsedate('1999-12-31')) # NG
》> time = Date.new(ParseDate.parsedate('1999-12-31')) # NG
》
》これやると、どうしてタイムゾーンが反映されないんだ、とか、いわれるかな。
しかし、Date.new( 1999, 12, 31)が既に出来るのだから、変わらないのでは?。
Date.new の改造のつもり。
def new_date ymd , *args
if ymd.is_a? String
case ymd
when /(\d+)\D+(\d+)\D+(\d+)/
return Date.new( $1.to_i , $2.to_i , $3.to_i )
end
end
Date.new ymd , *args
end
p new_date( '2000年12月31日' ).to_s
p new_date( '2000 12 31' ).to_s
p new_date( '2000.12.31' ).to_s
p new_date( '2000/12/31' ).to_s
p new_date( '2000-12-31' ).to_s
p new_date( 2000,12,31 ).to_s
PS.
》ggb03124@nifty.ne.jp ( たけ (tk)) wrote:
↑
Becky! で送信もとIDを変える方法が分からない。
PS2.
ライブラリで日本語が使えないのは痛いですね・・。
PS3.
Delphi では、ShortDateFormat(='yy/MM/dd'), LongTimeFormat(=
'hh:mm:ss')というグローバル変数があって、これを変えておくとデフォルトの
文字列変換ルーティン(to_s 相当)の変換方式を変えることが出来る。また、
プログラムの開始前にプラットフォームを調べて、このグローバル変数を変えて
いる。
c:\progra~1\borland\delphi5\source\rtl\sys\sysutils.pas
たけ(tk) ggb03124@nifty.ne.jp
http://member.nifty.ne.jp/take_tk