সি # তারিখের সময় থেকে "YYYYMMDDHHMMSS" ফর্ম্যাট


621

আমি একটি সি # তারিখটাইমকে "YYYYMMDDHHMMSS" ফর্ম্যাটে রূপান্তর করতে চাই। তবে এই ফর্ম্যাটটি পাওয়ার জন্য আমি কোনও অন্তর্নির্মিত পদ্ধতি খুঁজে পাচ্ছি না? কোন মন্তব্য?

উত্তর:


1060
DateTime.Now.ToString("yyyyMMddHHmmss"); // case sensitive

35
এইমাত্র আমিই কে ভাবি যে কয়েক মাস ধরে বড় এইচ এর জন্য বাদামের জন্য কয়েক ঘন্টা বড় এইচ আছে?
নিক

69
মি = মিনিট / এম = মাস, ঘন্টা = 12 ঘন্টা, এইচ = 24 ঘন্টা। আমি সন্দেহ করি যে কেউ সময় নিয়ে শুরু করেছিল এবং বলেছিল যে এইচএমএস = ঘন্টা মিনিট সেকেন্ড পরে, এইচটি 24 ঘন্টা হয়ে যায় এবং তারপরে তারা তারিখটি পেয়ে যায় এবং অনন্য অক্ষরের বাইরে চলে যায় তাই কেস হয়ে যায়। সেই জিনিসগুলির মধ্যে একটি মাত্র।
ডগলাস অ্যান্ডারসন

2
আপনি কীভাবে ব্যবহারের পিছনে পার্স করবেন DateTime.Parse()?
বড় টাকা

12
@ বিগমনি আপনি ডেটটাইম ব্যবহার করবেন P
জিম ল্যাম্ব

4
@ বিগমনি পার্স করার সময় formatএটি কেস সংবেদনশীলও হয়, যেমনDateTime.ParseExact(stringValue, "yyyyMMddHHmmss", CultureInfo.InvariantCulture);
নাইজেল টাচ

577

এই সাইটে দুর্দান্ত উদাহরণ রয়েছে এটি পরীক্ষা করে দেখুন

// 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           SortableDateTi­mePattern             yyyy'-'MM'-'dd'T'HH':'mm':'ss (*)
    u           UniversalSorta­bleDateTimePat­tern    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যেখানে [+ -] জেডজেডজ অংশটি টাইমজোন (জিএমটি তারিখ থেকে সংযোজন বা
বাদ পড়তে

zzzহয় 00: -06 , আমি চাই-0600
Kiquenet

2
@ কিকিনেট আপনি .Replace(":", "") $"{dt:yyyyMMddHHmmzzz}".Replace(":", "")প্রায় কাজ হিসাবে চেষ্টা করেছেন
নেরড্রয়েড

একটি বিকল্প dt.ToString("...");, যেখানে "..."উপরের বিন্যাসের সাথে প্রতিস্থাপন করুন , যেমন। "yyyy-MM-dd"
টুলমেকারস্টেভ

247

আপনি নিজেই ফর্ম্যাটটি নিজে লিখেছেন।

yourdate.ToString("yyyyMMddHHmmss")

  • এমএম = দুই অঙ্কের মাস
  • মিমি = দুই অঙ্কের মিনিট
  • এইচএইচ = দুই অঙ্কের ঘন্টা, 24 ঘন্টা ঘড়ি
  • এইচএইচ = দুই অঙ্কের ঘন্টা, 12 ঘন্টা ঘড়ি

অন্য সব কিছু স্ব-বর্ণনামূলক হওয়া উচিত।


92
"fff" মিলিসেকেন্ডগুলি দেবে যাতে আপনি মিলিসেকেন্ডগুলিতে একটি স্ট্রিং দিতে "yyyyMMddHHmmssfff" ব্যবহার করতে পারেন।
জেফ ওয়াইডার

টাইমজোন (জিএমটি তারিখ থেকে সংযোজন বা সংযোজন ঘন্টার সংখ্যা) কোনটি?
কিকিনেট

129

আপনি মাত্র কয়েক মাস (এমএম) এবং মিনিট (মিমি) এর মধ্যে সতর্কতা অবলম্বন করতে পেরেছেন:

DateTime dt = DateTime.Now; // Or whatever
string s = dt.ToString("yyyyMMddHHmmss");

(এছাড়াও লক্ষ করুন যে এইচএইচ 24 ঘন্টা ঘড়ি, যদিও এইচএইচটি 12 ঘন্টা ঘড়ি হবে, সাধারণত এএম / পিএম ডিজাইনারের জন্য টি বা টিটির সাথে একত্রে হয়))

যদি আপনি এটি একটি যৌগিক বিন্যাসের স্ট্রিংয়ের অংশ হিসাবে করতে চান তবে আপনি ব্যবহার করতে পারেন:

string s = string.Format("The date/time is: {0:yyyyMMddHHmmss}", dt);

আরও তথ্যের জন্য, কাস্টম তারিখ এবং সময় ফর্ম্যাটগুলিতে এমএসডিএন পৃষ্ঠা দেখুন ।


এটা কি সম্ভব now.ToString("yyyyMMdd_HHmmss"):? আমি বোঝাতে চাইছি অন্য চরিত্রের সাথে সংযুক্তি করা সম্ভব, সঠিক?
ড্যানিয়েলভি

1
@ ড্যানিয়েলভি: হ্যাঁ, তবে আমি আক্ষরিক চরিত্রগুলি উদ্ধৃত করব (অ্যাথাস্ট্রোফেস সহ)
জন স্কিটি

26

আপনি একটি কাস্টম বিন্যাস স্ট্রিং ব্যবহার করতে পারেন:

DateTime d = DateTime.Now;
string dateString = d.ToString("yyyyMMddHHmmss");

আপনি যদি 24-ঘন্টা ঘড়ির সময় না চান তবে "এইচ এইচ" এর বিকল্প "এইচএইচ" করুন st


21

আপনি যদি রিশ্যার্পার ব্যবহার করেন তবে ':' এর সাহায্য নিন (চিত্র দেখুন)

Intellisense


আপনি 2013 (এবং সম্ভবত পূর্বে) রিসার্পারের সাথে একই পাবেন।
ওয়াই হা লি

18
DateTime.Now.ToString("yyyyMMddHHmmss");

আপনি যদি চান এটি একটি স্ট্রিং হিসাবে প্রদর্শিত


16

.Net Standard 2আপনি নীচের DateTimeমত ফর্ম্যাট করতে পারেন :

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));


8

আমি অবাক হলাম এর জন্য কারও লিংক নেই। যে কোনও বিন্যাস এখানে গাইডলাইন ব্যবহার করে তৈরি করা যেতে পারে:

কাস্টম তারিখ এবং সময় ফর্ম্যাট স্ট্রিংস

আপনার নির্দিষ্ট উদাহরণের জন্য (অন্যরা যেমন নির্দেশ করেছে) এর মতো কিছু ব্যবহার করুন

my_format="yyyyMMddHHmmss";
DateTime.Now.ToString(my_format);

যেখানে আমার_ফর্ম্যাটটি y, M, H, m, s, f, F এবং আরও অনেকগুলি স্ট্রিং সংমিশ্রণ হতে পারে! লিঙ্কটি দেখুন।


1
জন স্কিটি তার উত্তরে সেই লিঙ্কটি অন্তর্ভুক্ত করেছে ( স্ট্যাকওভারফ্লো . com / a / 3025377 / 12484 )।
জন স্নাইডার

5

DateTimeস্ট্রিংয়ের পরিবর্তে অবজেক্ট হিসাবে তারিখটি পান । তারপরে আপনি এটি চান হিসাবে এটি ফর্ম্যাট করতে পারেন।

  • এমএম / ডিডি / ইয়েআই 08/22/2006
  • ডিডিডি, ডিডি এমএমএমএম ইয়ি মঙ্গলবার, 22 আগস্ট 2006 2006
  • ডিডিডি, ডিএম এমএমএমএম ইয়েইচ এইচ: মিমি মঙ্গলবার, 22 আগস্ট 2006 06:30
  • ডিডিডি, ডিডি এমএমএমএম ইয়াহি এইচ: মিমি টিটি মঙ্গলবার, 22 আগস্ট 2006 06:30 এএম
  • ডিডিডি, ডি এম এমএমএম ইয়েইচ এইচ: মিমি মঙ্গলবার, 22 আগস্ট 2006 6:30
  • ডিডিডি, ডিডি এমএমএমএম ইয়াহইইচ: মিমি টিটি মঙ্গলবার, 22 আগস্ট 2006 6:30 এএম
  • ডিডিডি, ডিএম এমএমএমএম ইয়াহইইচ এইচ এমএম: এসএস মঙ্গলবার, 22 আগস্ট 2006 06:30:07
  • এমএম / ডিডি / ইয়াহি এইচএইচ: মিমি 08/22/2006 06:30
  • এমএম / ডিডি / ইয়াহি এইচ: মিমি টিটি 08/22/2006 06:30 এএম
  • এমএম / ডিডি / ইয়াহি এইচ: মিমি 08/22/2006 6:30
  • এমএম / ডিডি / ইয়াহি এইচ: মিমি টিটি 08/22/2006 6:30 এএম
  • এমএম / ডিডি / ইয়াহই এইচ এইচ: মিমি: এসএস 08/22/2006 06:30:07

আরও নিদর্শন জন্য এখানে ক্লিক করুন



3

একটি সহজ পদ্ধতি, 'টাইপ থেকে' এবং 'টাইপ করতে' সম্পূর্ণ নিয়ন্ত্রণের, এবং কেবল ভবিষ্যতের কাস্টিংয়ের জন্য এই কোডটি মনে রাখা দরকার

DateTime.ParseExact(InputDate, "dd/MM/yyyy", CultureInfo.InvariantCulture).ToString("yyyy/MM/dd"));

2

এটি একটি বড় চুক্তি হয় না। আপনি কেবল এই মত লাগাতে পারেন

WriteLine($"{DateTime.Now.ToString("yyyy-MM-dd-HH:mm:ss")}");

আমি এখানে ব্যবহার করেছি for যা ইন্টারপোলেশন স্ট্রিংয়ের জন্য ক্ষমা করুন।


0

সম্ভাবনাগুলি পাতলা যে উপরের উত্তরগুলির মধ্যে আপনার সমস্যার সমাধান করা যায় নি। তবুও, আমি আমার পদ্ধতিটি ভাগ করে নিচ্ছি যা সর্বদা ডেটটাইমের বিভিন্ন ফর্ম্যাটের জন্য আমার জন্য কাজ করে।

//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);

-1

গুগল অনুসন্ধানে প্রচুর ঘন্টা ব্যয় করার পরে, আমি নীচের সমাধানটি খুঁজে পেলাম যখন আমি স্থানীয়ভাবে তারিখের সময় দিই, অন্য সার্ভারের সাথে ব্যতিক্রম ছাড়াও ত্রুটি ঘটেছিল ......... তারিখটি সঠিক বিন্যাসে নেই .. সি # তে পাঠ্য বাক্সের তারিখের সময় সংরক্ষণ / অনুসন্ধানের আগে, কেবলমাত্র বাইরের সেরার সংস্কৃতি পরীক্ষা করা ডাটাবেস সার্ভার সংস্কৃতির মতোই .. প্রাক্তন উভয়ই "এন-ইউএস" হওয়া উচিত বা স্ন্যাপ শটের নীচে উভয় "এন-জিবি" এসপি হওয়া উচিত।

এখানে চিত্র বর্ণনা লিখুন

এমনকি (তারিখ / মিমি / ইয়েআই) বা (ইয়ে / মিমি / ডিডি) মতো বিভিন্ন তারিখের ফর্ম্যাট সহ এটি সঠিকভাবে সংরক্ষণ বা অনুসন্ধান করবে will


M মিটারের মূলধনটি করতে হবে - এম হ'ল মাস, মি মিনিট। এগুলি আপনাকে উদাহরণস্বরূপ 2017/51/10 দেবে
ক্রিস মোসচিনি

এটি কেবল তারিখের ফর্ম্যাট দেখাচ্ছে দিন / মাস / বছর বা বছর / মাস / দিন হতে পারে .......... সংস্কৃতির পার্থক্য থাকা সত্ত্বেও এটি অনুসন্ধান করবে ... সময়ের সাথে বিভ্রান্ত হবে না ....... ......... এই ফর্ম্যাটটি তারিখটাইম পিকার ক্যালেন্ডারে সেট করা যেতে পারে ........
আবদুল খালিক
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.