जवाबों:
DateTime.Now.ToString("yyyyMMddHHmmss"); // case sensitive
DateTime.Parse()
?
format
यह मामला संवेदनशील भी है, अर्थातDateTime.ParseExact(stringValue, "yyyyMMddHHmmss", CultureInfo.InvariantCulture);
इस साइट के महान उदाहरण हैं इसे देखें
// create date time 2008-03-09 16:05:07.123
DateTime dt = new DateTime(2008, 3, 9, 16, 5, 7, 123);
String.Format("{0:y yy yyy yyyy}", dt); // "8 08 008 2008" year
String.Format("{0:M MM MMM MMMM}", dt); // "3 03 Mar March" month
String.Format("{0:d dd ddd dddd}", dt); // "9 09 Sun Sunday" day
String.Format("{0:h hh H HH}", dt); // "4 04 16 16" hour 12/24
String.Format("{0:m mm}", dt); // "5 05" minute
String.Format("{0:s ss}", dt); // "7 07" second
String.Format("{0:f ff fff ffff}", dt); // "1 12 123 1230" sec.fraction
String.Format("{0:F FF FFF FFFF}", dt); // "1 12 123 123" without zeroes
String.Format("{0:t tt}", dt); // "P PM" A.M. or P.M.
String.Format("{0:z zz zzz}", dt); // "-6 -06 -06:00" time zone
// month/day numbers without/with leading zeroes
String.Format("{0:M/d/yyyy}", dt); // "3/9/2008"
String.Format("{0:MM/dd/yyyy}", dt); // "03/09/2008"
// day/month names
String.Format("{0:ddd, MMM d, yyyy}", dt); // "Sun, Mar 9, 2008"
String.Format("{0:dddd, MMMM d, yyyy}", dt); // "Sunday, March 9, 2008"
// two/four digit year
String.Format("{0:MM/dd/yy}", dt); // "03/09/08"
String.Format("{0:MM/dd/yyyy}", dt); // "03/09/2008"
मानक दिनांक समय प्रारूपण
String.Format("{0:t}", dt); // "4:05 PM" ShortTime
String.Format("{0:d}", dt); // "3/9/2008" ShortDate
String.Format("{0:T}", dt); // "4:05:07 PM" LongTime
String.Format("{0:D}", dt); // "Sunday, March 09, 2008" LongDate
String.Format("{0:f}", dt); // "Sunday, March 09, 2008 4:05 PM" LongDate+ShortTime
String.Format("{0:F}", dt); // "Sunday, March 09, 2008 4:05:07 PM" FullDateTime
String.Format("{0:g}", dt); // "3/9/2008 4:05 PM" ShortDate+ShortTime
String.Format("{0:G}", dt); // "3/9/2008 4:05:07 PM" ShortDate+LongTime
String.Format("{0:m}", dt); // "March 09" MonthDay
String.Format("{0:y}", dt); // "March, 2008" YearMonth
String.Format("{0:r}", dt); // "Sun, 09 Mar 2008 16:05:07 GMT" RFC1123
String.Format("{0:s}", dt); // "2008-03-09T16:05:07" SortableDateTime
String.Format("{0:u}", dt); // "2008-03-09 16:05:07Z" UniversalSortableDateTime
/*
Specifier DateTimeFormatInfo property Pattern value (for en-US culture)
t ShortTimePattern h:mm tt
d ShortDatePattern M/d/yyyy
T LongTimePattern h:mm:ss tt
D LongDatePattern dddd, MMMM dd, yyyy
f (combination of D and t) dddd, MMMM dd, yyyy h:mm tt
F FullDateTimePattern dddd, MMMM dd, yyyy h:mm:ss tt
g (combination of d and t) M/d/yyyy h:mm tt
G (combination of d and T) M/d/yyyy h:mm:ss tt
m, M MonthDayPattern MMMM dd
y, Y YearMonthPattern MMMM, yyyy
r, R RFC1123Pattern ddd, dd MMM yyyy HH':'mm':'ss 'GMT' (*)
s SortableDateTimePattern yyyy'-'MM'-'dd'T'HH':'mm':'ss (*)
u UniversalSortableDateTimePattern yyyy'-'MM'-'dd HH':'mm':'ss'Z' (*)
(*) = culture independent
*/
सी # 6 स्ट्रिंग प्रक्षेप प्रारूप का उपयोग कर अद्यतन करें
// create date time 2008-03-09 16:05:07.123
DateTime dt = new DateTime(2008, 3, 9, 16, 5, 7, 123);
$"{dt:y yy yyy yyyy}"; // "8 08 008 2008" year
$"{dt:M MM MMM MMMM}"; // "3 03 Mar March" month
$"{dt:d dd ddd dddd}"; // "9 09 Sun Sunday" day
$"{dt:h hh H HH}"; // "4 04 16 16" hour 12/24
$"{dt:m mm}"; // "5 05" minute
$"{dt:s ss}"; // "7 07" second
$"{dt:f ff fff ffff}"; // "1 12 123 1230" sec.fraction
$"{dt:F FF FFF FFFF}"; // "1 12 123 123" without zeroes
$"{dt:t tt}"; // "P PM" A.M. or P.M.
$"{dt:z zz zzz}"; // "-6 -06 -06:00" time zone
// month/day numbers without/with leading zeroes
$"{dt:M/d/yyyy}"; // "3/9/2008"
$"{dt:MM/dd/yyyy}"; // "03/09/2008"
// day/month names
$"{dt:ddd, MMM d, yyyy}"; // "Sun, Mar 9, 2008"
$"{dt:dddd, MMMM d, yyyy}"; // "Sunday, March 9, 2008"
// two/four digit year
$"{dt:MM/dd/yy}"; // "03/09/08"
$"{dt:MM/dd/yyyy}"; // "03/09/2008"
yyyyMMddHHmm[+-]ZZzz
जहां [+ -] ZZzz हिस्सा समयक्षेत्र है (GMT तिथि से जोड़े जाने या
zzz
है -06: 00 , मैं चाहूंगा-0600
.Replace(":", "")
$"{dt:yyyyMMddHHmmzzz}".Replace(":", "")
लगभग एक काम के रूप में कोशिश की है
dt.ToString("...");
, जहां "..."
ऊपर के प्रारूप के साथ प्रतिस्थापित किया जाता है, जैसे। "yyyy-MM-dd"
।
आपने व्यावहारिक रूप से प्रारूप स्वयं लिखा है।
yourdate.ToString("yyyyMMddHHmmss")
बाकी सब कुछ आत्म-व्याख्यात्मक होना चाहिए।
आपको बस महीनों (एमएम) और मिनटों (मिमी) के बीच सावधान रहना होगा:
DateTime dt = DateTime.Now; // Or whatever
string s = dt.ToString("yyyyMMddHHmmss");
(यह भी ध्यान दें कि HH 24 घंटे की घड़ी है, जबकि hh 12 घंटे की घड़ी होगी, जो आमतौर पर am / pm डिज़ाइनर के लिए t या tt के संयोजन में होती है।)
यदि आप इसे समग्र प्रारूप स्ट्रिंग के भाग के रूप में करना चाहते हैं, तो आप इसका उपयोग करेंगे:
string s = string.Format("The date/time is: {0:yyyyMMddHHmmss}", dt);
अधिक जानकारी के लिए, कस्टम तिथि और समय प्रारूपों पर MSDN पृष्ठ देखें ।
now.ToString("yyyyMMdd_HHmmss")
:? मेरा मतलब है कि अन्य पात्रों के साथ तालमेल बनाना संभव है, सही?
आप एक कस्टम प्रारूप स्ट्रिंग का उपयोग कर सकते हैं:
DateTime d = DateTime.Now;
string dateString = d.ToString("yyyyMMddHHmmss");
यदि आप 24 घंटे की घड़ी का समय नहीं चाहते हैं तो "HH" के लिए "hh" को स्थान दें।
में .Net Standard 2
आप स्वरूपित कर सकते हैं DateTime
belows तरह:
DateTime dt = DateTime.Now;
CultureInfo iv = CultureInfo.InvariantCulture;
// Default formats
// D - long date Tuesday, 24 April 2018
// d - short date 04/24/2018
// F - full date long Tuesday, 24 April 2018 06:30:00
// f - full date short Tuesday, 24 April 2018 06:30
// G - general long 04/24/2018 06:30:00
// g - general short 04/24/2018 06:30
// U - universal full Tuesday, 24 April 2018 06:30:00
// u - universal sortable 2018-04-24 06:30:00
// s - sortable 2018-04-24T06:30:00
// T - long time 06:30:00
// t - short time 06:30
// O - ISO 8601 2018-04-24T06:30:00.0000000
// R - RFC 1123 Tue, 24 Apr 2018 06:30:00 GMT
// M - month April 24
// Y - year month 2018 April
Console.WriteLine(dt.ToString("D", iv));
// Custom formats
// M/d/yy 4/8/18
// MM/dd/yyyy 04/08/2018
// yy-MM-dd 08-04-18
// yy-MMM-dd ddd 08-Apr-18 Sun
// yyyy-M-d dddd 2018-4-8 Sunday
// yyyy MMMM dd 2018 April 08
// h:mm:ss tt zzz 4:03:05 PM -03
// HH:m:s tt zzz 16:03:05 -03:00
// hh:mm:ss t z 04:03:05 P -03
// HH:mm:ss tt zz 16:03:05 PM -03
Console.WriteLine(dt.ToString("M/d/yy", iv));
string date = DateTime.Now.ToString("dd-MMM-yy"); //05-Aug-13
मुझे आश्चर्य है कि किसी के पास इसके लिए लिंक नहीं है। यहाँ दिशानिर्देशों का उपयोग करके कोई भी प्रारूप बनाया जा सकता है:
कस्टम दिनांक और समय प्रारूप स्ट्रिंग्स
अपने विशिष्ट उदाहरण के लिए (जैसा कि दूसरों ने संकेत दिया है) कुछ का उपयोग करें
my_format="yyyyMMddHHmmss";
DateTime.Now.ToString(my_format);
जहाँ my_format y, M, H, m, s, f, F और अधिक का कोई भी स्ट्रिंग संयोजन हो सकता है! लिंक देखें।
DateTime
स्ट्रिंग के बजाय ऑब्जेक्ट के रूप में दिनांक प्राप्त करें । फिर आप इसे अपनी इच्छानुसार प्रारूपित कर सकते हैं।
एक आसान तरीका, 'प्रकार से' और 'प्रकार' पर पूर्ण नियंत्रण, और केवल भविष्य की कास्टिंग के लिए इस कोड को याद रखने की आवश्यकता है
DateTime.ParseExact(InputDate, "dd/MM/yyyy", CultureInfo.InvariantCulture).ToString("yyyy/MM/dd"));
यह कोई बड़ी बात नहीं है। आप बस इस तरह डाल सकते हैं
WriteLine($"{DateTime.Now.ToString("yyyy-MM-dd-HH:mm:ss")}");
यहाँ बहाना मैंने $ का उपयोग किया जो स्ट्रिंग इंटरपोल के लिए है।
संभावना पतली है कि ऊपर दिए गए किसी भी उत्तर से आपकी समस्या हल नहीं होगी। बहरहाल, मैं अपने तरीके को साझा कर रहा हूं जो हमेशा मेरे लिए अलग-अलग प्रारूपेट के लिए काम करता है।
//Definition
public static DateTime ConvertPlainStringToDatetime(string Date, string inputFormat, string outputFormat)
{
DateTime date;
CultureInfo enUS = new CultureInfo("en-US");
DateTime.TryParseExact(Date, inputFormat, enUS,
DateTimeStyles.AdjustToUniversal, out date);
string formatedDateTime = date.ToString(outputFormat);
return Convert.ToDateTime(formatedDateTime);
}
//Calling
string oFormat = "yyyy-MM-dd HH:mm:ss";
DateTime requiredDT = ConvertPlainStringToDatetime("20190205","yyyyMMddHHmmss", oFormat );
DateTime requiredDT = ConvertPlainStringToDatetime("20190508-12:46:42","yyyyMMdd-HH:mm:ss", oFormat);
Google खोज पर बहुत अधिक समय बिताने के बाद, मुझे निम्न समाधान मिला जब मैंने स्थानीय रूप से तारीख का समय दिया, तो अन्य सर्वर से कोई अपवाद नहीं था, त्रुटि थी ......... दिनांक उचित प्रारूप में नहीं है .. C # में टेक्स्ट बॉक्स की तारीख को बचाने / खोजने से पहले, बस या तो बाहरी सीरर कल्चर की जाँच करना डेटाबेस सर्वर कल्चर की तरह ही है .. Ex दोनों को "en-US" होना चाहिए या स्नैप शॉट के नीचे "en-GB" दोनों होना चाहिए।
यहां तक कि अलग-अलग दिनांक प्रारूप जैसे (dd / mm / yyyy) या (yyyy / mm / dd) के साथ भी, यह सटीक रूप से बचाएगा या खोज करेगा।