Пакет - это способ логически организовать ваши классы. Например, вы можете объявить package com.foo;
в верхней части каждого исходного файла, которые достаточно связаны друг с другом, чтобы находиться в пакете com.foo
вместе. Компилятор Java и среда выполнения также ожидают, что вы поместите такие файлы в путь com/foo/
, где корень этого пути является каталогом или JAR в вашем пути к классам.
Файл JAR позволяет вам физически организовать ваши классы. Вы можете взять любые файлы Java (и их родительские каталоги, соблюдая описанную выше структуру каталогов) и сохранить их в JAR-файле. Файл JAR может содержать файлы, принадлежащие нескольким пакетам, а несколько файлов JAR могут содержать файлы, принадлежащие одному и тому же пакету. Таким образом, файл JAR в значительной степени способ хранить несколько файлов классов в одном физическом файле.
Существуют некоторые другие специальные характеристики файлов JAR. Например, вы можете указать значение Main-Class
в манифесте JAR, чтобы указать, какой класс является точкой входа для приложения, и вы можете скрыть пакеты в JAR-файле , что означает, что все классы, определенные в этом пакете, должны быть заархивированы в одном JAR-файле ».
Вот то, в чем Вы нуждаетесь:
public static DateTime UnixTimeStampToDateTime( double unixTimeStamp )
{
// Unix timestamp is seconds past epoch
System.DateTime dtDateTime = new DateTime(1970,1,1,0,0,0,0,System.DateTimeKind.Utc);
dtDateTime = dtDateTime.AddSeconds( unixTimeStamp ).ToLocalTime();
return dtDateTime;
}
Или, для Java (который отличается, потому что метка времени находится в миллисекундах, не секунды):
public static DateTime JavaTimeStampToDateTime( double javaTimeStamp )
{
// Java timestamp is milliseconds past epoch
System.DateTime dtDateTime = new DateTime(1970,1,1,0,0,0,0,System.DateTimeKind.Utc);
dtDateTime = dtDateTime.AddMilliseconds( javaTimeStamp ).ToLocalTime();
return dtDateTime;
}
Галочка Unix составляет 1 секунду (если я помню хорошо), и галочка.NET 100 наносекунды.
при обнаружении с проблемами с наносекундами Вы могли бы хотеть попытаться использовать AddTick (10000000 * значение).
Записанный самое простое расширение, которое работает на нас. Если кто-либо ищет его...
public static class DateTimeExtensions
{
public static DateTime FromUnixTimeStampToDateTime(this string unixTimeStamp)
{
return DateTimeOffset.FromUnixTimeSeconds(long.Parse(unixTimeStamp)).UtcDateTime;
}
}