DateField (Lucene 3.6.2 API)
Keywords: org.apache.lucene.document.DateField class

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.lucene.document
Class DateField

    java.lang.Object
      org.apache.lucene.document.DateField

Deprecated. If you build a new index, use `DateTools` or `NumericField` instead. This class is included for use with existing indices and will be removed in a future release (possibly Lucene 4.0).

    @Deprecated
    public class DateField

extends Object

Provides support for converting dates to strings and vice-versa. The strings are structured so that lexicographic sorting orders by date, which makes them suitable for use as field values and search terms.

Note that this class saves dates with millisecond granularity, which is bad for `TermRangeQuery` and `PrefixQuery`, as those queries are expanded to a BooleanQuery with a potentially large number of terms when searching. Thus you might want to use `DateTools` instead.

Note: dates before 1970 cannot be used, and therefore cannot be indexed when using this class. See `DateTools` for an alternative without such a limitation.

Another approach is `NumericUtils`, which provides a sortable binary representation (prefix encoded) of numeric values, which date/time are. For indexing a `Date` or `Calendar`, just get the unix timestamp as `long` using `Date.getTime()` or `Calendar.getTimeInMillis()` and index this as a numeric value with `NumericField` and use `NumericRangeQuery` to query it.

Method Summary
`static String` | `dateToString(Date date)` Deprecated. Converts a Date to a string suitable for indexing.
`static String` | `MAX_DATE_STRING()` Deprecated.
`static String` | `MIN_DATE_STRING()` Deprecated.
`static Date` | `stringToDate(String s)` Deprecated. Converts a string-encoded date into a Date object.
`static long` | `stringToTime(String s)` Deprecated. Converts a string-encoded date into a millisecond time.
`static String` | `timeToString(long time)` Deprecated. Converts a millisecond time to a string suitable for indexing.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Method Detail

### MIN_DATE_STRING

    public static String MIN_DATE_STRING()

  Deprecated.

### MAX_DATE_STRING

    public static String MAX_DATE_STRING()

  Deprecated.

### dateToString

    public static String dateToString(Date date)

  Deprecated.
  Converts a Date to a string suitable for indexing.

  Throws:
    `RuntimeException` - if the date specified in the method argument is before 1970

### timeToString

    public static String timeToString(long time)

  Deprecated.
  Converts a millisecond time to a string suitable for indexing.

  Throws:
    `RuntimeException` - if the time specified in the method argument is negative, that is, before 1970

### stringToTime

    public static long stringToTime(String s)

  Deprecated.
  Converts a string-encoded date into a millisecond time.

### stringToDate

    public static Date stringToDate(String s)

  Deprecated.
  Converts a string-encoded date into a Date object.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD