2016-05-02 2 views
-2

У меня есть строка, хранящаяся в таблице "13/12/1985 12:00:00 a.m.", когда я попытался преобразовать это в Datetime, я получаю исключение, говорящее, что «String не является допустимым форматом DateTime». Это потому, что первая часть string(13) - месяц. Есть ли способ конвертировать приведенную выше строку в формат (mm/dd/yyyy hh:mm:ss am/pm)? Фактически строка, сохраненная в таблице, находится в формате «dd/mm/yyyy». Я хочу, чтобы преобразовать в «мм/дд/гггг» в DATETIMEНужно преобразовать строку в формат DateTime в C#

+0

Другой вопрос: почему вы храните 'DateTime' как' string' в вашем столе? Вы бы избежали этого исключения и других проблем, если бы сохранили его как то, что оно есть. –

+1

@DHN, эта ссылка для 'python', но этот вопрос для' C# '. Я уверен, что есть ответы на C#, хотя –

+0

@TimSchmelter, который является существующей таблицей. И эта таблица имеет отдельный столбец для хранения типа данных. Скажите DateTime как «D». Если это D, мне нужно преобразовать в datetime – user3403111

ответ

1

Попробуйте, его преобразования dd/MM/yyyy hh:mm:ss tt формат DateTime в формате MM/dd/yyyy hh:mm:ss tt

DateTime dt = DateTime.ParseExact("26/04/2016 12:00:00 PM", "dd/MM/yyyy hh:mm:ss tt", CultureInfo.InvariantCulture); 
string newdate = dt.ToString("MM/dd/yyyy hh:mm:ss tt") 
+0

Мне нужен формат mm/dd/yyyy – user3403111

+0

И вы попробовали использовать этот формат? Обратите внимание, что 'mm' означает минуты, а' MM' означает месяцы. –

+0

@ user3403111 в C# 'ММ' месяц и 'мм' минута, так что, я думаю, вы хотите месяц? – Mostafiz

Смежные вопросы