Rentetan ke Tarikh C#

WBOY
Lepaskan: 2024-09-03 15:17:26
asal
656 orang telah melayarinya

Dalam C#, perwakilan rentetan tarikh dan masa boleh ditukar kepada objek DateTime yang setara menggunakan beberapa kaedah parse yang disediakan oleh DateTime struct. Kaedah ini memerlukan perwakilan rentetan tarikh untuk ditukar dan bersama-sama ini, kami juga boleh menentukan maklumat format khusus budaya.

Diberikan di bawah adalah kaedahnya:

  • DateTime.Parse()
  • DateTime.ParseExact()
  • DateTime.TryParse()
  • DateTime.TryParseExact()

Sintaks untuk setiap Kaedah Penghuraian

Diberikan di bawah ialah sintaks untuk setiap kaedah penghuraian ini:

public static DateTimeParse(string str);
Salin selepas log masuk

Di sini, kaedah Parse() mengambil hujah rentetan, yang mewakili tarikh dan masa untuk menukar. Ia mengembalikan objek DateTime, bersamaan dengan tarikh dan masa yang diwakili oleh str.

public static DateTimeParseExact(string str, string strFormat, IFormatProviderformatProvider);
Salin selepas log masuk

Di sini, tiga argumen dihantar kepada kaedah di mana str ialah perwakilan rentetan tarikh dan masa untuk ditukar, format menentukan format str yang diperlukan dan formatProvider menyediakan maklumat format khusus budaya untuk str. Ia mengembalikan objek DateTime, bersamaan dengan tarikh dan masa yang diwakili oleh str.

public static bool TryParse(string str, out DateTimeresult);
Salin selepas log masuk

Di sini, str mewakili tarikh dan masa untuk menukar, dan nilai yang terhasil akan disimpan dalam hasil pembolehubah. Kaedah ini akan kembali benar jika penukaran berjaya. Jika tidak, ia akan kembali palsu.

public static bool TryParseExact(string str, string[] strFormats, IFormatProviderformatProvider,
DateTimeStylesstyle, out DateTimeresult);
Salin selepas log masuk

Kaedah ini akan kembali benar jika penukaran berjaya. Jika tidak, ia akan kembali palsu.

Bagaimana untuk Menukar Rentetan kepada Tarikh dalam C#?

Beberapa kaedah tersedia untuk menukar rentetan kepada tarikh dalam C#. Rentetan yang hendak ditukar mestilah perwakilan tarikh dan masa yang sah, dan tidak boleh kosong atau kosong. Apabila penukaran berjaya, kaedah ini mengembalikan objek DateTime.

Kaedah yang digunakan untuk menghuraikan rentetan sehingga kini adalah seperti berikut:

  • DateTime.Parse(rentetan);
    DateTime.Parse(rentetan, IFormatProvider);
    DateTime.Parse(rentetan, IFormatProvider, DateTimeStyles);

Tiga kaedah di atas ialah bentuk terlebih beban bagi kaedah Parse(). Kesemuanya mengembalikan objek System.DateTime pada penukaran yang berjaya.

Contoh:

CultureInfo provider = newCultureInfo("en-US");
DateTime date = DateTime.Parse("08/08/2020", provider,
DateTimeStyles.AdjustToUniversal);
Salin selepas log masuk

Dalam pernyataan di atas, kami mula-mula mencipta objek kelas CultureInfo, yang melaksanakan IFormatProvider. Sekarang, kaedah ini akan menukar rentetan input kepada objek DateTime yang setara menggunakan maklumat format khusus budaya yang disediakan dan dengan menggunakan nilai DateTimeStyles yang diberikan. Apabila penukaran berjaya, objek DateTime yang terhasil akan disimpan dalam ‘tarikh’ pembolehubah.

  • DateTime.ParseExact(rentetan, rentetan, IFormatProvider);
    DateTime.ParseExact(rentetan, rentetan, IFormatProvider, DateTimeStyles);
    DateTime.ParseExact(rentetan, rentetan[], IFormatProvider, DateTimeStyles);

Tiga kaedah di atas ialah bentuk terlebih beban bagi kaedah ParseExact(). Kesemuanya mengembalikan objek System.DateTime pada penukaran yang berjaya.

Contoh:

string[] dateFormats = new[] { "yyyy/MM/dd", "MM/dd/yyyy",
"MM/dd/yyyyHH:mm:ss"};
CultureInfo provider = newCultureInfo("en-US");
DateTime date = DateTime.ParseExact("08/08/2020", dateFormats, provider,
DateTimeStyles.AdjustToUniversal);
Salin selepas log masuk

Perwakilan rentetan tarikh yang dihantar kepada kaedah ini sepatutnya sepadan dengan mana-mana format yang ditentukan yang terkandung dalam tatasusunan rentetan.

  • DateTimeTryParse(rentetan, keluar DateTime);
    DateTime.TryParse(rentetan, IFormatProvider, DateTimeStyles, keluar DateTime);

Jenis parameter dalam kaedah ini adalah sama seperti yang kita lihat sebelum ini. Kaedah ini menukar rentetan input kepada objek DateTime yang setara menggunakan maklumat format khusus budaya dan gaya yang dihantar kepadanya, dan ia kembali benar jika penukaran berjaya; jika tidak, ia kembali palsu. Nilai DateTime yang terhasil akan disimpan dalam parameter 'keluar' kaedah ini.

  • DateTime.TryParseExact(rentetan, rentetan[], IFormatProvider, DateTimeStyles, keluar DateTime);
    DateTime.TryParseExact(rentetan, rentetan, IFormatProvider, DateTimeStyles, keluar DateTime);

Kaedah ini menukar rentetan input sehingga kini menggunakan maklumat format dan gaya khusus budaya yang disediakan. Kaedah ini mengembalikan benar pada penukaran yang berjaya; jika tidak, ia kembali palsu.

Contoh String to Date C#

Di bawah ialah contoh.

Kod:

using System;
usingSystem.Globalization;
publicclassProgram
{
publicstaticvoidMain()
{
DateTime date;
string[] dateFormats = new[] { "yyyy/MM/dd", "MM/dd/yyyy",
"MM/dd/yyyyHH:mm:ss"};
CultureInfo provider = newCultureInfo("en-US");
try
{
//Parse()
date = DateTime.Parse("08/08/2020");
Console.WriteLine("\nParse() method: " + date);
//ParseExact()
date = DateTime.ParseExact("08/08/2020", dateFormats, provider,
DateTimeStyles.AdjustToUniversal);
Console.WriteLine("\nParseExact() method: " + date);
}
catch (Exception ex)
{
Console.Write(ex.Message);
Console.ReadLine();
}
//TryParse()
if (DateTime.TryParse("08/08/2020", out date))
{
Console.WriteLine("\nTryParse() : " + date);
}
else
{
Console.WriteLine("Conversion failed");
}
//TryParseExact()
if (DateTime.TryParseExact("08/08/2020", dateFormats, provider,
DateTimeStyles.AdjustToUniversal, out date))
{
Console.WriteLine("\nTryParseExact() : " + date);
}
else
{
Console.WriteLine("Conversion failed");
}
Console.ReadLine();
}
}
Salin selepas log masuk

Output:

Rentetan ke Tarikh C#

Kesimpulan

Dalam C#, rentetan boleh ditukar kepada objek DateTime menggunakan kaedah penghuraian yang disediakan oleh struct DateTime. Selain daripada kaedah ini, kita boleh menukar rentetan kepada tarikh menggunakan Convert. Kepada kaedah DateTime() yang mengambil perwakilan rentetan tarikh sebagai input dan mengembalikan objek DateTime yang setara.

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

Label berkaitan:
sumber:php
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan