|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
17.01.2013, 17:42 | #1 |
Пользователь
Регистрация: 18.01.2010
Сообщений: 95
|
Как в С# правильно перевести date и time из excel
Добрый день,
Помогите пожалуйста есть в excel записанная дата 05.11.2010 и время 17:14:06 типа в date and time , С# считывает их естественно цифрами, как мне с точностью до секунды привести их в С# к виду в excel. Я делаю вот так int hour; int min; int sec; hour = Convert.ToInt16(Math.Round(Time[k] / 0.04167, 0, 0)); min = Convert.ToInt16(Math.Round(((Time[k] - (Convert.ToDouble(hour) * 0.04167))) / 0.0006945, 0, 0)); sec = Convert.ToInt16(Math.Round(((Time[k] - (Convert.ToDouble(hour) * 0.04167) - (Convert.ToDouble(min) * 0.0006945))) / 0.00001, 1, 0)); но он беспощадно врет( |
17.01.2013, 17:56 | #2 |
Форумчанин
Регистрация: 21.01.2009
Сообщений: 719
|
http://msdn.microsoft.com/en-us/library/8tfzyc64.aspx
Можно передавать разные строки форматирования
Изобретатель велосипедов
|
18.01.2013, 11:04 | #3 |
Пользователь
Регистрация: 18.01.2010
Сообщений: 95
|
я все равно не понимаю, он же excel ,берет именно число например 0,718148148, которое на самом деле в excel выглядит как 17:14:08, мне надо чтобы в C# ,именно точное время вплоть до секунды, а что делает DateTime?
|
18.01.2013, 19:45 | #4 |
Форумчанин
Регистрация: 21.01.2009
Сообщений: 719
|
Ну тут уж вам нужно искать конкретно документацию по тому, как excel конвертирует строки (и скорее всего её вообще не существует в открытом доступе). Как вы можете пытаться преобразовать строку, не зная правила преобразования?)
если совсем приспичило, то на ум приходит идея из разряда "из пушки по воробьям": используете Microsoft.Office.Interop.Excel (или как-то так, не помню точно), программно запускаете excel в скрытом режиме, задаете формат ячейки, задаете значение ячейки (после чего оно автоматически преобразуется), вытягиваете значение ячейки. Но это очень ресурсоёмко и долго. И вообще костыль)
Изобретатель велосипедов
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
как перевести с программы Excel в Word выдаёт ошибку Run-time error '9105' | vbn14 | Microsoft Office Excel | 2 | 21.02.2012 21:01 |
Как правильно перевести книгу с макросом из 2007 в 2003 Excel? | Алекс7 | Microsoft Office Excel | 5 | 15.10.2011 09:21 |
Как перевести integer в Date | demiancz | Общие вопросы Delphi | 11 | 17.02.2011 23:08 |
Запись даты в Paradox - поля date time | xKLONx | БД в Delphi | 6 | 17.08.2010 17:40 |
Исчезает Date and Time Picker! | Klim Bassenger | Microsoft Office Excel | 17 | 24.11.2009 18:25 |