Bagaimana cara mendapatkan tanggal hari ini dalam format C # dalam format bb / hh / tttt?

105

Bagaimana cara mendapatkan tanggal hari ini dalam format C # dalam format bb / hh / tttt?

Saya perlu menetapkan variabel string ke tanggal hari ini (sebaiknya tanpa tahun), tetapi pasti ada cara yang lebih baik daripada membangunnya bulan - / - hari satu per satu.

BTW: Saya di AS jadi M / dd akan benar, misalnya 11 September adalah 9/11.

Catatan: jawaban dari kronoz masuk ke dalam diskusi internasionalisasi, dan saya pikir itu cukup luar biasa untuk disebutkan karena saya juga tidak bisa menjadikannya sebagai jawaban yang 'diterima'.

jawaban kronoz

Keng
sumber
4
M / dd akan menunjukkan 1 Jan sebagai 1/01. Apakah Anda ingin 1/01 atau hanya 1/1?
Joel Coehoorn

Jawaban:

23

Tidak terlalu berlebihan, tetapi jika Anda menginternasionalkan kode, mungkin lebih berguna memiliki fasilitas untuk mendapatkan tanggal singkat untuk budaya tertentu, misalnya: -

using System.Globalization;
using System.Threading;

...

var currentCulture = Thread.CurrentThread.CurrentCulture;
try {
  Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("en-us");
  string shortDateString = DateTime.Now.ToShortDateString();
  // Do something with shortDateString...
} finally {
  Thread.CurrentThread.CurrentCulture = currentCulture;
}

Meskipun jelas pendekatan "m / hh / yyyy" jauh lebih rapi !!

ljs
sumber
13
DateTime.Now.ToString("dd/MM/yyyy");
Corin Blaikie
sumber
8
string today = DateTime.Today.ToString("M/d");
Billy Jo
sumber
8
DateTime.Now.Date.ToShortDateString()

adalah budaya tertentu.

Yang terbaik adalah tetap menggunakan:

DateTime.Now.ToString("d/MM/yyyy");
Corin Blaikie
sumber
5
DateTime.Now.Date.ToShortDateString()

Saya pikir inilah yang Anda cari

Josh Mein
sumber
3

Atau tanpa tahun:

DateTime.Now.ToString("M/dd")
EBGreen
sumber