Saya perlu untuk menghapus bagian saat tanggal waktu atau mungkin memiliki tanggal dalam format berikut di objek
bentuk tidak dalam bentuk string
.
06/26/2009 00:00:00:000
Saya tidak dapat menggunakan string
metode konversi seperti yang saya butuhkan tanggal di objek
bentuk.
Saya pertama kali mencoba mengkonversi DateTime
ke string
, menghapus waktu tanggal tertentu dari itu, tapi itu menambah 12:00:00 AM
segera setelah saya mengubahnya kembali ke DateTime
objek
kembali lagi.
Anda dapat menggunakan format string untuk memberikan output string format yang anda suka.
DateTime dateAndTime = DateTime.Now;
Console.WriteLine(dateAndTime.ToString("dd/MM/yyyy")); // Will give you smth like 25/05/2011
Baca lebih lanjut tentang Custom tanggal dan waktu format string.
Menggunakan metode ToShortDateString. Lihat dokumentasi http://msdn.microsoft.com/en-us/library/system.datetime.toshortdatestring.aspx
var dateTimeNow = DateTime.Now; // Return 00/00/0000 00:00:00
var dateOnlyString = dateTimeNow.ToShortDateString(); //Return 00/00/0000
Date
properti akan kembali tanggal pada tengah malam.
Salah satu pilihan yang bisa untuk mendapatkan nilai-nilai individu (hari/bulan/tahun) secara terpisah dan menyimpannya dalam jenis yang anda inginkan.
var dateAndTime = DateTime.Now;
int year = dateAndTime.Year;
int month = dateAndTime.Month;
int day = dateAndTime.Day;
string.Format("{0}/{1}/{2}", month, day, year);
Tidak ada jawaban atas memecahkan masalah saya pada winforms.
cara termudah untuk mencapai HANYA date adalah fungsi sederhana di Datetime:
DateTime dt = DateTime.now;
String BirthDate = dt.ToShortDateString();
Anda hanya akan memiliki tanggal Ulang tahun string .
Anda dapat't. DateTime di .NET selalu memiliki waktu, default ke 00:00:00:000. Tanggal milik dari DateTime juga DateTime (!), sehingga memiliki waktu default untuk 00:00:00:000 juga.
Ini adalah kekurangan dalam .NET Framework, dan dapat dikatakan bahwa DateTime di .NET melanggar Single tanggung Jawab Prinsip.
var newDate = DateTime.Now; //newDate.Date property is date portion of DateTime
Berikut ini adalah metode lain menggunakan String.Format
DateTime todaysDate = DateTime.UtcNow;
string dateString = String.Format("{0:dd/MM/yyyy}", todaysDate);
Console.WriteLine("Date with Time: "+ todaysDate.ToString());
Console.WriteLine("Date Only : " + dateString);
Output:
Date with Time: 9/4/2016 11:42:16 AM
Date Only : 04/09/2016
Hal ini juga bekerja jika Tanggal Waktu disimpan dalam database.
Untuk Lebih Tanggal dan Waktu format cek link ini:
Harap membantu.
Saya menulis DateOnly
struktur. Ini menggunakan DateTime di bawah kulit tapi tidak ada waktu bagian yang terkena dipublikasikan:
using System;
public struct DateOnly : IComparable, IFormattable, IComparable<DateOnly>, IEquatable<DateOnly>
{
private DateTime _dateValue;
public int CompareTo(object obj)
{
if (obj == null)
{
return 1;
}
DateOnly otherDateOnly = (DateOnly)obj;
if (otherDateOnly != null)
{
return ToDateTime().CompareTo(otherDateOnly.ToDateTime());
}
else
{
throw new ArgumentException("Object is not a DateOnly");
}
}
int IComparable<DateOnly>.CompareTo(DateOnly other)
{
return this.CompareToOfT(other);
}
public int CompareToOfT(DateOnly other)
{
// If other is not a valid object reference, this instance is greater.
if (other == new DateOnly())
{
return 1;
}
return this.ToDateTime().CompareTo(other.ToDateTime());
}
bool IEquatable<DateOnly>.Equals(DateOnly other)
{
return this.EqualsOfT(other);
}
public bool EqualsOfT(DateOnly other)
{
if (other == new DateOnly())
{
return false;
}
if (this.Year == other.Year && this.Month == other.Month && this.Day == other.Day)
{
return true;
}
else
{
return false;
}
}
public static DateOnly Now()
{
return new DateOnly(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day);
}
public static bool TryParse(string s, ref DateOnly result)
{
DateTime dateValue = default(DateTime);
if (DateTime.TryParse(s, out dateValue))
{
result = new DateOnly(dateValue.Year, dateValue.Month, dateValue.Day);
return true;
}
else
{
return false;
}
}
public static DateOnly Parse(string s)
{
DateTime dateValue = default(DateTime);
dateValue = DateTime.Parse(s);
return new DateOnly(dateValue.Year, dateValue.Month, dateValue.Day);
}
public static DateOnly ParseExact(string s, string format)
{
CultureInfo provider = CultureInfo.InvariantCulture;
DateTime dateValue = default(DateTime);
dateValue = DateTime.ParseExact(s, format, provider);
return new DateOnly(dateValue.Year, dateValue.Month, dateValue.Day);
}
public DateOnly(int yearValue, int monthValue, int dayValue) : this()
{
Year = yearValue;
Month = monthValue;
Day = dayValue;
}
public DateOnly AddDays(double value)
{
DateTime d = new DateTime(this.Year, this.Month, this.Day);
d = d.AddDays(value);
return new DateOnly(d.Year, d.Month, d.Day);
}
public DateOnly AddMonths(int months)
{
DateTime d = new DateTime(this.Year, this.Month, this.Day);
d = d.AddMonths(months);
return new DateOnly(d.Year, d.Month, d.Day);
}
public DateOnly AddYears(int years)
{
DateTime d = new DateTime(this.Year, this.Month, this.Day);
d = d.AddYears(years);
return new DateOnly(d.Year, d.Month, d.Day);
}
public DayOfWeek DayOfWeek
{
get
{
return _dateValue.DayOfWeek;
}
}
public DateTime ToDateTime()
{
return _dateValue;
}
public int Year
{
get
{
return _dateValue.Year;
}
set
{
_dateValue = new DateTime(value, Month, Day);
}
}
public int Month
{
get
{
return _dateValue.Month;
}
set
{
_dateValue = new DateTime(Year, value, Day);
}
}
public int Day
{
get
{
return _dateValue.Day;
}
set
{
_dateValue = new DateTime(Year, Month, value);
}
}
public static bool operator == (DateOnly aDateOnly1, DateOnly aDateOnly2)
{
return (aDateOnly1.ToDateTime() == aDateOnly2.ToDateTime());
}
public static bool operator != (DateOnly aDateOnly1, DateOnly aDateOnly2)
{
return (aDateOnly1.ToDateTime() != aDateOnly2.ToDateTime());
}
public static bool operator > (DateOnly aDateOnly1, DateOnly aDateOnly2)
{
return (aDateOnly1.ToDateTime() > aDateOnly2.ToDateTime());
}
public static bool operator < (DateOnly aDateOnly1, DateOnly aDateOnly2)
{
return (aDateOnly1.ToDateTime() < aDateOnly2.ToDateTime());
}
public static bool operator >= (DateOnly aDateOnly1, DateOnly aDateOnly2)
{
return (aDateOnly1.ToDateTime() >= aDateOnly2.ToDateTime());
}
public static bool operator <= (DateOnly aDateOnly1, DateOnly aDateOnly2)
{
return (aDateOnly1.ToDateTime() <= aDateOnly2.ToDateTime());
}
public static TimeSpan operator - (DateOnly aDateOnly1, DateOnly aDateOnly2)
{
return (aDateOnly1.ToDateTime() - aDateOnly2.ToDateTime());
}
public override string ToString()
{
return _dateValue.ToShortDateString();
}
public string ToString(string format)
{
return _dateValue.ToString(format);
}
public string ToString(string fmt, IFormatProvider provider)
{
return string.Format("{0:" + fmt + "}", _dateValue);
}
public string ToShortDateString()
{
return _dateValue.ToShortDateString();
}
public string ToDbFormat()
{
return string.Format("{0:yyyy-MM-dd}", _dateValue);
}
}
Ini dikonversi dari VB.NET, jadi mohon maaf jika beberapa konversi tidak 100%
Menggunakan tanggal.ToShortDateString() untuk mendapatkan tanggal tanpa waktu komponen
var tanggal = DateTime.Sekarang var shortDate = tanggal.ToShortDateString() //akan memberikan anda 16/01/2019
menggunakan tanggal.ToString() untuk menyesuaikan format tanggal
var tanggal = DateTime.Sekarang var shortDate = tanggal.ToString('dd-MMM-yyyy') //akan memberikan 16-Jan-2019
Datang di posting ini ketika mencoba untuk memecahkan asli Q.
Saya menggunakan Asp.Net dan setelah beberapa penelitian yang telah saya temukan ketika anda mengikat untuk nilai tanggal dalam kode di belakang, anda bisa drop waktu sehingga tidak akan ditampilkan pada layar.
C#:
DateTime Today = DateTime.Now;
aspx:
<%: this.Today.ToShortDateString() %>
Membuat sebuah struct yang hanya memegang properti yang anda inginkan. Kemudian perpanjangan metode untuk dengan mudah mendapatkan bahwa struct dari contoh DateTime.
public struct DateOnly
{
public int Day { get; set; }
public int Month { get; set; }
public int Year { get; set; }
}
public static class DateOnlyExtensions
{
public static DateOnly GetDateOnly(this DateTime dt)
{
return new DateOnly
{
Day = dt.Day,
Month = dt.Month,
Year = dt.Year
};
}
}
Penggunaan
DateTime dt = DateTime.Now;
DateOnly result = dt.GetDateOnly();