ডেটটাইম.টোস্ট্রিং ("ডিডি / এমএম / ইয়ে") কেন আমাকে ডিডি-এমএম-ইয়ে দেয়?


155

আমি চাই যে আমার তারিখের সময়টি "dd / MM / yyyy" ফর্ম্যাটে থাকা স্ট্রিতে রূপান্তরিত হোক

আমি যখনই এটি ব্যবহার করে রূপান্তর করি DateTime.ToString("dd/MM/yyyy"), dd-MM-yyyyতার পরিবর্তে আমি পাই ।

আমাকে কি কিছু সংস্কৃতি সম্পর্কিত তথ্য সেট করতে হবে?


ডেটটাইম.টোস্ট্রিং ("ডিডি / এমএম / ইয়ে");
জিম্পলড

2
আমি এটি করেছিলাম, এটি কাজ করে না, সমস্যাটি তারিখগুলি নয়, এটি "-", আমি এটি উল্লেখ করেছি "/" হিসাবে যেমনটি আমি নির্দিষ্ট করেছি
ডিস্ক্রাইড

7
মিমি থেকে এমএম ব্যবহার করুন - মিমি কয়েক মিনিটের জন্য নয় কয়েক মাস উপস্থাপন করে।
লয়েড পাওয়েল


DateTime.ToString জন্য MSDN ডকুমেন্টেশন একেবারে ভুল: " উদাহরণস্বরূপ," DD / MM / yyyyHH: মিমি "ফরম্যাট স্ট্রিং প্রদর্শন একটি নির্দিষ্ট বিন্যাসে তারিখ এবং সময় স্ট্রিং ... ফরম্যাট স্ট্রিং ব্যবহার" / "একটি নির্দিষ্ট যেমন সংস্কৃতি-নির্দিষ্ট সেটিংস নির্বিশেষে তারিখ বিভাজক। "
কর্নেল আতঙ্ক

উত্তর:


243

স্ল্যাশ একটি তারিখ ডিলিমিটার, সুতরাং এটি বর্তমান সংস্কৃতি তারিখ ডিলিমিটারটি ব্যবহার করবে।

আপনি যদি সর্বদা স্ল্যাশ ব্যবহার করতে এটি হার্ড-কোড করতে চান তবে আপনি এই জাতীয় কিছু করতে পারেন:

DateTime.ToString("dd'/'MM'/'yyyy")

2
@ স্পেন্ডার - কিছু সংস্কৃতিতে তারা।
ড্যানিয়েল এ। হোয়াইট

আপনার দ্রুত উত্তরের জন্য আপনাকে ধন্যবাদ. তুমি ঠিক. আমি আপনাকে সঠিক উত্তর দেব
ডিস্ক্রাইভ

6
আপনি এই ফর্ম্যাটটিও ব্যবহার করতে পারেন: ডেটটাইম। টুস্ট্রিং (@ "ইয়াই \ / এমএম \ / ডিডি")
বেস 2

1
দুটিই MSDN রেফারেন্স: msdn.microsoft.com/en-us/library/8kb3ddd4.aspx#dateSeparator
russau

2
ব্যাকস্ল্যাশ ব্যবহার করে ফর্ম্যাট স্ট্রিংটি এড়িয়ে যাওয়ার কাজও করে: ডেটটাইম.নো টুস্ট্রিং ("ডিডি \\ / এমএম \\ / ইয়াই");
টমবি

61

ডেটটাইমের দ্বিতীয় প্যারামিটার হিসাবে সংস্কৃতিInfo.InvariantC সংস্কৃতি পাস করুন , এটি আপনার পছন্দসই স্ট্রিংটি ফিরিয়ে দেবে, এমনকি একটি বিশেষ বিন্যাসও:

DateTime.Now.ToString("dd|MM|yyyy", CultureInfo.InvariantCulture)

ফিরে আসবে: 28 | 02 | 2014 |


স্বীকৃত উত্তরের চেয়ে এই কোডটি আরও পরিষ্কার I এস্ট্রোফেসের মাধ্যমে স্ল্যাশ এড়ানো থেকে কমপক্ষে এটি দেখতে আরও ভাল দেখাচ্ছে।
সের্গেই

2
অব্যাহতি অক্ষর ব্যবহার করার চেয়ে পড়ার জন্য অবশ্যই পড়া সহজ। আমি কিছুটা হতবাক হয়ে গিয়েছি যে পুরো তারিখটি আমি জানতাম না যে আমার তারিখের ফর্ম্যাটগুলি ওভাররাইট হয়ে যাচ্ছে!
সেভেজ

10

CultureInfo.InvariantCultureযুক্তি হিসাবে যুক্ত করুন :

using System.Globalization;

...

var dateTime = new DateTime(2016,8,16);
dateTime.ToString("dd/MM/yyyy", CultureInfo.InvariantCulture);

ফিরে আসবে:

"16/08/2016"

বিকাশকারী যদি এম এম এস ইত্যাদির মতো কয়েকটি অক্ষর দিয়ে টস্টিং পদ্ধতি ব্যবহার করে তবে আপনার সমাধানের সাথে ডেটটাইম.নো টোস্ট্রিং ("ইয়াই / ডিডি / মিমি / মাস", কালচারিআইনফো.আইভার্নেন্ট সংস্কৃতি) ফলাফল আসবে না 2017-01 / 02 / মাস এটি ফলাফল হবে 2017/01/02/2 তম
ওকান সারিকা

@ ওঙ্কানসারিকা যদি আপনি "/ মাস" দিয়ে তারিখটি প্রত্যয়ী করতে চান তবে তার পরিবর্তে টসস্ট্রিং পদ্ধতির পরে এটি করা উচিত। ডেটটাইম.নো টোস্ট্রিং ("ইয়াই / এমএম / ডিডি", কালচারিআইনফো.আইভারিয়ান্টকালচার) + "/ মাস";
মিকায়েল এনগ্ভার

1

আপনি যদি এমভিসি, টেবিল ব্যবহার করেন তবে এটি এটির মতো কাজ করে:

<td>@(((DateTime)detalle.fec).ToString("dd'/'MM'/'yyyy"))</td>

-3

বোবা প্রশ্ন / উত্তর সম্ভবত, কিন্তু আপনি চেষ্টা করেছেন dd/MM/yyyy? মূলধন নোট করুন।

mmএকটি নেতৃস্থানীয় শূন্য সঙ্গে মিনিটের জন্য হয়। সুতরাং আমি সন্দেহ করি যে আপনি কি চান।

এটি সহায়ক হতে পারে: http://www.geekzilla.co.uk/View00FF7904-B510-468C-A2C8-F859AA20581F.htm

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.