Rumah  >  Artikel  >  pembangunan bahagian belakang  >  DateTime dalam C#

DateTime dalam C#

WBOY
WBOYasal
2024-09-03 15:16:12282semak imbas

Dalam C#, DateTime ialah struct. Oleh itu ia adalah jenis nilai dan digunakan untuk mewakili seketika masa. Ia digunakan untuk mewakili tarikh dan masa hari itu. Nilai jenis DateTime berjulat antara 12:00:00 tengah malam, 1 Januari 0001 hingga 11:59:59 PM, 31 Disember 9999 A.D.Nilai DateTime tidak boleh batal kerana ia adalah jenis nilai. Untuk memulakan nilai DateTime, kita boleh memanggil mana-mana lebihan pembina DateTime. Kami juga boleh menetapkan nilai yang dikembalikan daripada harta atau kaedah kepada objek DateTime.

Sintaks:

Di bawah ialah sintaks untuk memulakan contoh baharu struktur DateTime:

DateTime date_time = new DateTime();

Di sini, date_time ialah nama yang ditentukan pengguna yang diberikan kepada contoh jenis DateTime. Kami telah memulakan kejadian ini menggunakan pengendali 'baharu'. Dalam sintaks di atas, kami telah menggunakan pembina tanpa parameter tersirat untuk memulakan DateTime kepada nilai lalainya. Kami juga boleh memulakan contoh DateTime menggunakan mana-mana lebihan pembina DateTime.

Bagaimana DateTime Berfungsi dalam C#?

Dalam C#, kita boleh bekerja dengan DateTime dan memberikan nilai kepada pembolehubah DateTime dalam beberapa cara.

  • Kami boleh memberikan nilai kepada pembolehubah DateTime dengan memanggil mana-mana lebihan pembina DateTime, sama ada pembina tanpa parameter atau pembina dengan parameter seperti yang ditunjukkan di bawah:
DateTime dateTime = new DateTime(2020, 2, 8, 7, 32, 56);

Pernyataan di atas memulakan contoh baharu struktur DateTime untuk tahun, bulan, hari, jam, minit dan saat tertentu.

  • Di sini, kami telah menggunakan pembina di bawah bagi struktur DateTime:
public DateTime(int year, int month, int day, int hour, int minute, int second);
  • Selain daripada yang diterangkan di atas, terdapat sepuluh pembina lain yang tersedia untuk bekerja dengan DateTime, iaitu seperti berikut:
public DateTime(long ticks);
  • Di sini, 'kutu' mewakili tarikh dan masa yang dinyatakan dengan bilangan selang ratus nanosaat yang berlalu sejak Januari 1 0001 pada 00:00:00.000 dalam kalendar Gregorian.
public DateTime(long ticks, DateTimeKind kind);
  • Di sini, 'jenis' mewakili nilai antara nilai penghitungan, yang mewakili sama ada kutu menentukan waktu tempatan, waktu sejagat yang diselaraskan atau tiada satu pun di atas.
public DateTime(int year, int month, int day);
  • Dalam konteks ini, 'tahun' mewakili nilai dari 1 hingga 9999, 'bulan' mewakili nilai dari 1 hingga 12 dan 'hari' mewakili nilai dalam julat hari dalam bulan tertentu.
public DateTime(int year, int month, int day, Calendar calendar);
  • Di sini, 'kalendar' mewakili kalendar yang digunakan untuk mentafsir tahun, bulan dan hari.
public DateTime(int year, int month, int day, int hour, int minute, int second, DateTimeKind kind);
public DateTime(int year, int month, int day, int hour, int minute, int second, Calendar calendar);
public DateTime(int year, int month, int day, int hour, int minute, int second, int millisecond);
  • Di sini, 'milisaat' mewakili milisaat dari 0 hingga 999.
public DateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, DateTimeKind kind);
public DateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, Calendar calendar);
public DateTime(int year, int month, int day, int hour, int minute, int second, int millisecond, Calendar calendar, DateTimeKind kind);
  • Kami boleh menetapkan pembolehubah DateTime nilai DateTime yang dikembalikan daripada harta atau kaedah seperti yang ditunjukkan di bawah:
DateTime dateTime = DateTime.Now;

Ini menetapkan tarikh dan masa semasa kepada pembolehubah DateTime.

  • Kami boleh menghuraikan nilai DateTime daripada perwakilan rentetannya dan boleh menetapkannya kepada pembolehubah DateTime, seperti ditunjukkan di bawah:
string str = "6/2/2020 9:20:40 AM";
DateTime dateTime = DateTime.Parse(str, System.Globalization.CultureInfo.InvariantCulture);

Kami boleh melakukan penukaran di atas menggunakan kaedah Parse(), ParseExact(), TryParse(), dan TryParseExact().

Contoh DateTime dalam C#

Berikut ialah beberapa contoh cara menghuraikan rentetan ke objek DateTime:

Contoh #1

Contoh menunjukkan tarikh dan masa semasa dengan tarikh dan masa esok menggunakan sifat dan kaedah yang disediakan oleh DateTime:

Kod:

using System;
using System.IO;
namespace ConsoleApp4
{
class Program
{
public static DateTime GetNextDay()
{
//getting next day using AddDays() method
return DateTime.Now.AddDays(1);
}
public static void Main()
{
//displaying current date and time using 'Now' property of DateTime
Console.WriteLine("Current date and time: {0}", DateTime.Now);
DateTime dateTime = GetNextDay();
Console.WriteLine("Tomorrow date and time: {0}", dateTime);
Console.ReadLine();
}
}
}

Output:

DateTime dalam C#

Contoh #2

Sebagai contoh, mengambil tahun sebagai input daripada pengguna dan kemudian menyemak sama ada ia tahun lompat atau tidak menggunakan kaedah DateTime.IsLeapYear().

Kod:

using System;
using System.IO;
namespace ConsoleApp4
{
class Program
{
public static void Main()
{
try
{
//taking year as input from user
Console.WriteLine("Please enter a year");
int year = Convert.ToInt32(Console.ReadLine());
//checking if entered year is a leap year or not
//using DateTime.IsLeapYear() method
Console.WriteLine("\n Using IsLeapYear() method:");
if (DateTime.IsLeapYear(year))
{
Console.WriteLine(year + " is a leap year");
}
else
{
Console.WriteLine(year + " is not a leap year");
}
//checking if entered year is a leap year or not
//using DateTime.DaysInMonth() method
Console.WriteLine("\n Using DaysInMonth() method:");
if (DateTime.DaysInMonth(year, 2) == 29)
{
Console.WriteLine(year + " is a leap year");
}
else
{
Console.WriteLine(year + " is not a leap year");
}
}
catch(Exception ex)
{
Console.WriteLine(ex.Message);
}
Console.ReadLine();
}
}
}

Output:

DateTime dalam C#

Contoh #3

Sebagai contoh, kita akan mendapat hari pertama dan hari terakhir tahun ini.

Kod:

using System;
using System.IO;
namespace ConsoleApp4
{
class Program
{
public static void Main()
{
DateTime dateTime = DateTime.Now;
//displaying first day of current year
DateTime firstDay = new DateTime(dateTime.Year, 1, 1);
Console.WriteLine("First day of {0} is {1}", dateTime.Year, firstDay);
//getting first day of next year
DateTime dateTimeNext = new DateTime(dateTime.Year + 1, 1, 1);
//subtracting one day from the first day of next year
//to get the last day of current year
DateTime lastday = dateTimeNext.AddDays(-1);
Console.WriteLine("Last day of {0} is {1}", dateTime.Year, lastday);
Console.ReadLine();
}
}
}

Output:

DateTime dalam C#

Kesimpulan

Struktur dateTime digunakan untuk berfungsi dengan tarikh dan masa. Ia digunakan sebagai jenis data untuk menyimpan tarikh dan masa. DateTime menyediakan sifat dan kaedah untuk berfungsi dengan tarikh dan masa. DateTime ialah struktur dan jenis nilai; ia tidak boleh batal.

Atas ialah kandungan terperinci DateTime dalam C#. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:C# String IndexOf()Artikel seterusnya:C# String IndexOf()