WinBase.FILETIME (JNA API)
Description: declaration: package: com.sun.jna.platform.win32, interface: WinBase, class: FILETIME

Package com.sun.jna.platform.win32

# Class WinBase.FILETIME

java.lang.Object
com.sun.jna.Structure
com.sun.jna.platform.win32.WinBase.FILETIME

Direct Known Subclasses:
  `WinBase.FILETIME.ByReference`

Enclosing interface:
  WinBase

@FieldOrder({"dwLowDateTime","dwHighDateTime"}) public static class WinBase.FILETIME extends Structure
The FILETIME structure is a 64-bit value representing the number of 100-nanosecond intervals since January 1, 1601 (UTC). Conversion code in this class Copyright 2002-2004 Apache Software Foundation.

Author:
  Rainer Klute (klute@rainer-klute.de) for the Apache Software Foundation (org.apache.poi.hpsf)

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `static class`
  `WinBase.FILETIME.ByReference`

  ## Nested classes/interfaces inherited from class com.sun.jna.Structure

  `Structure.ByValue, Structure.FieldOrder, Structure.StructField`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `int`
  `dwHighDateTime`
  `int`
  `dwLowDateTime`

  ### Fields inherited from class com.sun.jna.Structure

  `ALIGN_DEFAULT, ALIGN_GNUC, ALIGN_MSVC, ALIGN_NONE, CALCULATE_SIZE`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `FILETIME()`
  `FILETIME(WinNT.LARGE_INTEGER ft)`
  Construct FILETIME from LARGE_INTEGER
  `FILETIME(Pointer memory)`
  `FILETIME(Date date)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static long`
  `dateToFileTime(Date date)`
  Converts a `Date` into a filetime.
  `static Date`
  `filetimeToDate(int high, int low)`
  Converts a Windows FILETIME into a `Date`.
  `Date`
  `toDate()`
  Converts this filetime into a `Date`
  `WinDef.DWORDLONG`
  `toDWordLong()`
  Converts the two 32-bit unsigned integer parts of this filetime into a 64-bit unsigned integer representing the number of 100-nanosecond intervals since January 1, 1601 (UTC).
  `String`
  `toString()`
  If `jna.dump_memory` is true, will include a native memory dump of the Structure's backing memory.
  `long`
  `toTime()`
  Converts this filetime into a number of milliseconds which have passed since January 1, 1970 (UTC).

  ### Methods inherited from class com.sun.jna.Structure

  `allocateMemory, allocateMemory, autoAllocate, autoRead, autoRead, autoWrite, autoWrite, cacheTypeInfo, calculateSize, clear, createFieldsOrder, createFieldsOrder, createFieldsOrder, createFieldsOrder, dataEquals, dataEquals, ensureAllocated, equals, fieldOffset, getAutoRead, getAutoWrite, getFieldList, getFieldOrder, getFields, getNativeAlignment, getNativeSize, getNativeSize, getPointer, getStringEncoding, getStructAlignment, hashCode, newInstance, newInstance, read, readField, readField, setAlignType, setAutoRead, setAutoSynch, setAutoWrite, setStringEncoding, size, sortFields, toArray, toArray, toString, useMemory, useMemory, write, writeField, writeField, writeField`

  ### Methods inherited from class java.lang.Object

  `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- ## Field Details

  - ### dwLowDateTime

    public int dwLowDateTime

  - ### dwHighDateTime

    public int dwHighDateTime

- ## Constructor Details

  - ### FILETIME

    public FILETIME(Date date)

  - ### FILETIME

    public FILETIME(WinNT.LARGE_INTEGER ft)
    Construct FILETIME from LARGE_INTEGER
    Parameters:
      `ft` -

  - ### FILETIME

    public FILETIME()

  - ### FILETIME

    public FILETIME(Pointer memory)

- ## Method Details

  - ### filetimeToDate

    public static Date filetimeToDate(int high, int low)

    Converts a Windows FILETIME into a `Date`. The Windows FILETIME structure holds a date and time associated with a file. The structure identifies a 64-bit integer specifying the number of 100-nanosecond intervals which have passed since January 1, 1601. This 64-bit value is split into the two double words stored in the structure.

    Parameters:
      `high` - The higher double word of the FILETIME structure.
      `low` - The lower double word of the FILETIME structure.
    Returns:
      The Windows FILETIME as a `Date`.

  - ### dateToFileTime

    public static long dateToFileTime(Date date)

    Converts a `Date` into a filetime.

    Parameters:
      `date` - The date to be converted
    Returns:
      The filetime
    See Also:
      - `filetimeToDate(int, int)`

  - ### toDate

    public Date toDate()

    Converts this filetime into a `Date`

    Returns:
      The `Date` represented by this filetime.

  - ### toTime

    public long toTime()

    Converts this filetime into a number of milliseconds which have passed since January 1, 1970 (UTC).

    Returns:
      This filetime as a number of milliseconds which have passed since January 1, 1970 (UTC)

  - ### toDWordLong

    public WinDef.DWORDLONG toDWordLong()

    Converts the two 32-bit unsigned integer parts of this filetime into a 64-bit unsigned integer representing the number of 100-nanosecond intervals since January 1, 1601 (UTC).

    Returns:
      This filetime as a 64-bit unsigned integer number of 100-nanosecond intervals since January 1, 1601 (UTC).

  - ### toString

    public String toString()
    Description copied from class: `Structure`
    If `jna.dump_memory` is true, will include a native memory dump of the Structure's backing memory.
    Overrides:
      `toString` in class `Structure`
    Returns:
      String representation of this object.