2017-01-19 29 views
0

Я загрузил Java Native Access в Eclipse для использования в программе, в частности для использования переменной time_t date, чтобы получить временную метку unix. Существует ли эта структура или она находится в другой форме?Существует ли time_t в JNA?

В случае, если его не существует, какая была бы моя лучшая альтернатива, чтобы получить время, чтобы просто использовать System.currentTimeMillis()?

+0

Какие родные функции вы пытаетесь использовать? Это имеет большое значение для «наилучшего» способа получения времени эпохи unix и того, какой тип использовать для его представления. – technomage

ответ

0

JNA не имеет определенного типа для time_t, потому что он обычно легко моделируется на любой конкретной операционной системе существующим примитивным типом.

Вы можете определить его самостоятельно легко ... на MacOS вы могли бы просто заменить его NativeLong или использования:

class time_t extends IntegerType { 
    public time_t() { 
     super(Native.LONG_SIZE); 
    } 
} 

С time_t is defined in seconds, вы могли бы использовать System.currentTimeMillis() если вы разделили его на 1000. Это все зависит от того, какое использование вы используете для переменной. Как правило, если вы используете JNA, вы пытаетесь использовать некоторое значение собственного времени.