[解決済み] Rubyで日付と時刻の変換を行う。
2022-06-06 05:57:26
質問
RubyでDateTimeとTimeオブジェクトをどのように変換するのですか?
どのように解決するのですか?
2つの微妙に異なる変換が必要です。
から変換するには
Time
から
DateTime
に変更すると、Timeクラスは以下のように修正されます。
require 'date'
class Time
def to_datetime
# Convert seconds + microseconds into a fractional number of seconds
seconds = sec + Rational(usec, 10**6)
# Convert a UTC offset measured in minutes to one measured in a
# fraction of a day.
offset = Rational(utc_offset, 60 * 60 * 24)
DateTime.new(year, month, day, hour, min, seconds, offset)
end
end
Dateと同様の調整で
DateTime
を
Time
.
class Date
def to_gm_time
to_time(new_offset, :gm)
end
def to_local_time
to_time(new_offset(DateTime.now.offset-offset), :local)
end
private
def to_time(dest, method)
#Convert a fraction of a day to a number of microseconds
usec = (dest.sec_fraction * 60 * 60 * 24 * (10**6)).to_i
Time.send(method, dest.year, dest.month, dest.day, dest.hour, dest.min,
dest.sec, usec)
end
end
ローカルタイムとGM/UTCタイムのどちらかを選択する必要があることに注意してください。
上記のコードスニペットは、いずれもO'Reillyの Ruby クックブック . このコードでは ポリシー はこれを許可しています。
関連
-
[解決済み] Pythonで現在時刻を取得する方法
-
[解決済み] MySQLでdatetimeとtimestampのどちらのデータ型を使用すべきですか?
-
[解決済み] Rubyのswitch文の書き方
-
[解決済み] time(1) の出力における 'real', 'user' および 'sys' はどのような意味ですか?
-
[解決済み] SQL Server の DateTime データ型から日付だけを返す方法
-
[解決済み] C#で相対時間を計算する
-
[解決済み] JavaScriptでUnixのタイムスタンプを時刻に変換する
-
[解決済み] Rubyからシェルコマンドを呼び出す方法
-
[解決済み] Rubyで文字列を小文字・大文字に変換する方法
-
[解決済み】文字列をdatetimeに変換する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】rubyの1e18という数字は何を意味するのか?
-
[解決済み] Rubyでファイルをあるディレクトリから別のディレクトリにコピーする
-
[解決済み] RMagickのインストール。MagickWand.hが見当たりません。
-
[解決済み] ルビーです。そのようなファイルやディレクトリはありません @ rb_sysopen - testfile (Errno::ENOENT)
-
[解決済み] マトリックスサムネーションチャレンジ
-
[解決済み] rubyでto_yamlに書式オプションを指定することはできますか?
-
[解決済み] Capybaraを使ったドロップダウンでのオプションの選択方法
-
[解決済み] rvmのインストールがうまくいきません。"RVMは機能ではありません"
-
[解決済み] Ruby 2.0.0p0 IRB警告。"DLは非推奨です。Fiddleをお使いください。"
-
[解決済み】RubyのDateTimeとTimeの違いについて