|
Миллесекунды в дату C#
|
|||
---|---|---|---|
#18+
Уважаемые, подскажите пожалуйста. Как миллисекунды перевести в дату? (milliseconds --> DateTime) Гуглил, но что то ничего вразумительного не получилось найти. Есть вариант с переводом в UTC дату: DateTime uTime = DateTime.SpecifyKind(new DateTime(1970, 1, 1).AddMilliseconds(timeBytes), DateTimeKind.Utc); где timeBytes это 4 байта в формате long. Но у меня в протоколе (который я пытаюсь распарсить) описание поля следующее: "Значение sysUptime в миллисекундах на момент коммутации последнего пакета в данном потоке" ничего про UTC не сказано. встретил такой вариант ещё new DateTime(timeBytes * 10000); но не совсем уверен в его верности. подсажите пожалуйста. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2013, 16:13 |
|
Миллесекунды в дату C#
|
|||
---|---|---|---|
#18+
J_Mnemonic, а это чем не подходит http://msdn.microsoft.com/en-us/library/z2xf7zzk(v=vs.100).aspx авторDateTime Constructor (Int64) A date and time expressed in the number of 100-nanosecond intervals that have elapsed since January 1, 0001 at 00:00:00.000 in the Gregorian calendar. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2013, 16:17 |
|
Миллесекунды в дату C#
|
|||
---|---|---|---|
#18+
Pallaris, спасибо! получается всё таки этот вариант - new DateTime(timeBytes * 10000) ? я просто читал что tiks это не совсем миллисекунды и автор говорил: The DateTime(long ticks) constructor is what you need. Each tick represents 100 nanoseconds so multiply by 10000 to get to 1 millisecond. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2013, 16:21 |
|
Миллесекунды в дату C#
|
|||
---|---|---|---|
#18+
J_Mnemonic, ну если наносек - это 10^-9, милисек - это 10^-3, то да, нужно умножить на 1000000/100 = 10000 ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2013, 16:25 |
|
Миллесекунды в дату C#
|
|||
---|---|---|---|
#18+
А раз уж разговор о времени пошёл, можно ещё кое что спрошу? (я пока что плаваю в понятиях TimeStamp и DateTime) Мне нужно две даты между собой вычесть и получить значение (разницу) в секундах. Даты представлены в DateTime. если я просто вычту DateTime - DateTime, я получу DateTime, правильно? а как лучше теперь его представить в секундах? или может как то по другому наждо сделать? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2013, 18:33 |
|
Миллесекунды в дату C#
|
|||
---|---|---|---|
#18+
J_Mnemonic, DateTime - DateTime даст на выходе TimeSpan, то есть интервал времени между двумя датами. У TimeSpan есть свойство TotalSeconds которое тебе и нужно. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2013, 18:47 |
|
Миллесекунды в дату C#
|
|||
---|---|---|---|
#18+
в предыдущем посте я опечатался. TimeSpan а не про TimeStamp я имел ввиду ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2013, 18:48 |
|
Миллесекунды в дату C#
|
|||
---|---|---|---|
#18+
Спасибо большое! именно то что нужно (зарубку в мозгу сделал) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2013, 18:49 |
|
Миллесекунды в дату C#
|
|||
---|---|---|---|
#18+
а просто Seconds у TimeSpan вернёт секунды без дробной части? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2013, 18:50 |
|
Миллесекунды в дату C#
|
|||
---|---|---|---|
#18+
J_Mnemonic, не совсем. посмотри на пример: Код: c# 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2013, 19:35 |
|
|
start [/forum/topic.php?fid=20&msg=38360146&tid=1404243]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
43ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
others: | 15ms |
total: | 154ms |
0 / 0 |