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.