ฉันจะรับวันที่ / เวลาปัจจุบันในรูปแบบ DD / MM / YYYY HH: MM ได้อย่างไร


คำตอบ:


185

การจัดรูปแบบสามารถทำได้เช่นนี้ (ฉันคิดว่าคุณหมายถึง HH: MM แทนที่จะเป็น HH: SS แต่เปลี่ยนได้ง่าย):

Time.now.strftime("%d/%m/%Y %H:%M")
#=> "14/09/2011 14:09"

อัปเดตสำหรับการขยับ:

d = DateTime.now
d.strftime("%d/%m/%Y %H:%M")
#=> "11/06/2017 18:11"
d.next_month.strftime("%d/%m/%Y %H:%M")
#=> "11/07/2017 18:11"

คุณต้องการrequire 'date'btw นี้


ใช่คุณพูดถูกฉันหมายถึง hh: mm และขอบคุณมากสำหรับคำตอบของคุณ
ไม่ระบุชื่อ

แต่ฉันจะเพิ่มเดือนได้อย่างไร?
ไม่ระบุชื่อ

ตรวจสอบว่าคุณสามารถใช้อัญมณีนี้rubygems.org/gems/formatted_times ได้หรือไม่
ravi1991

การแปลงเป็นสตริงแล้วการแยกวิเคราะห์ไม่เหมาะ
Chuck Batson

1
@ChuckBatson นี่เกี่ยวกับการขยับไม่ใช่คำแนะนำว่านี่เป็นวิธีที่ดีที่สุดในการหาDateวัตถุ อย่างไรก็ตามฉันถือเอาความคิดเห็นของคุณเป็นโอกาสในการอัปเดตคำตอบนี้สำหรับ Ruby เวอร์ชันปัจจุบันในที่สุด
Michael Kohl

25
require 'date'

current_time = DateTime.now

current_time.strftime "%d/%m/%Y %H:%M"
# => "14/09/2011 17:02"

current_time.next_month.strftime "%d/%m/%Y %H:%M"
# => "14/10/2011 17:02"

1
ฉันพบว่าสิ่งนี้ง่ายกว่าและอ่านง่ายกว่าโซลูชันที่ยอมรับ
skagedal

7
time = Time.now.to_s

time = DateTime.parse(time).strftime("%d/%m/%Y %H:%M")

สำหรับการเพิ่มเดือนที่ลดลงให้ใช้ตัวดำเนินการ << >>

ตัวอย่าง

datetime_month_before = DateTime.parse(time) << 1



datetime_month_before = DateTime.now << 1

4

สำหรับวันที่:

#!/usr/bin/ruby -w

date = Time.new
#set 'date' equal to the current date/time. 

date = date.day.to_s + "/" + date.month.to_s + "/" + date.year.to_s
#Without this it will output 2015-01-10 11:33:05 +0000; this formats it to display DD/MM/YYYY

puts date
#output the date

ด้านบนจะแสดงตัวอย่างเช่น10/01/15

และสำหรับเวลา

time = Time.new
#set 'time' equal to the current time. 

time = time.hour.to_s + ":" + time.min.to_s
#Without this it will output 2015-01-10 11:33:05 +0000; this formats it to display hour and           minute

puts time
#output the time

ด้านบนจะแสดงตัวอย่างเช่น11:33

จากนั้นนำมารวมกันเพิ่มในตอนท้าย:

puts date + " " + time
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.