com.lowagie.text.pdf

## Class PdfDate

- java.lang.Object
- - com.lowagie.text.pdf.PdfObject
  - - com.lowagie.text.pdf.PdfString
    - - com.lowagie.text.pdf.PdfDate

    public class PdfDate
    extends PdfString

`PdfDate` is the PDF date object.

PDF defines a standard date format. The PDF date format closely follows the format defined by the international standard ASN.1 (Abstract Syntax Notation One, defined in CCITT X.208 or ISO/IEC 8824). A date is a `PdfString` of the form:

> (D:YYYYMMDDHHmmSSOHH'mm')

This object is described in the 'Portable Document Format Reference Manual version 1.3' section 7.2 (page 183-184)

See Also:
  `PdfString`, `GregorianCalendar`

### Field Summary

Fields
`private static int[]` `DATE_SPACE`

### Fields inherited from class com.lowagie.text.pdf.PdfString

`encoding, hexWriting, objGen, objNum, originalValue, value`

### Fields inherited from class com.lowagie.text.pdf.PdfObject

`ARRAY, BOOLEAN, bytes, DICTIONARY, INDIRECT, indRef, NAME, NOTHING, NULL, NUMBER, STREAM, STRING, TEXT_PDFDOCENCODING, TEXT_UNICODE, type`

### Constructor Summary

Constructors
Constructor and Description
`PdfDate()` Constructs a `PdfDate`-object, representing the current day and time.
`PdfDate(java.util.Calendar d)` Constructs a `PdfDate`-object.

### Method Summary

Methods
`static java.util.Calendar` `decode(java.lang.String s)` Converts a PDF string representing a date into a Calendar.
`java.lang.String` `getW3CDate()` Gives the W3C format of the PdfDate.
`static java.lang.String` `getW3CDate(java.lang.String d)` Gives the W3C format of the PdfDate.
`private java.lang.String` `setLength(int i, int length)` Adds a number of leading zeros to a given `String` in order to get a `String` of a certain length.

### Methods inherited from class com.lowagie.text.pdf.PdfString

`decrypt, getBytes, getEncoding, getOriginalBytes, isHexWriting, setHexWriting, setObjNum, toPdf, toString, toUnicodeString`

### Methods inherited from class com.lowagie.text.pdf.PdfObject

`canBeInObjStm, getIndRef, isArray, isBoolean, isDictionary, isIndirect, isName, isNull, isNumber, isStream, isString, length, setContent, setIndRef, type`

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

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

### Field Detail

#### DATE_SPACE

    private static final int[] DATE_SPACE

### Constructor Detail

#### PdfDate

    public PdfDate(java.util.Calendar d)

Constructs a `PdfDate`-object.

Parameters:
  `d` - the date that has to be turned into a `PdfDate`-object

#### PdfDate

    public PdfDate()

Constructs a `PdfDate`-object, representing the current day and time.

### Method Detail

#### setLength

    private java.lang.String setLength(int i,
                             int length)

Adds a number of leading zeros to a given `String` in order to get a `String` of a certain length.

Parameters:
  `i` - a given number
  `length` - the length of the resulting `String`
Returns:
  the resulting `String`

#### getW3CDate

    public java.lang.String getW3CDate()

Gives the W3C format of the PdfDate.

Returns:
  a formatted date

#### getW3CDate

    public static java.lang.String getW3CDate(java.lang.String d)

Gives the W3C format of the PdfDate.

Parameters:
  `d` - the date in the format D:YYYYMMDDHHmmSSOHH'mm'
Returns:
  a formatted date

#### decode

    public static java.util.Calendar decode(java.lang.String s)

Converts a PDF string representing a date into a Calendar.

Parameters:
  `s` - the PDF string representing a date
Returns:
  a `Calendar` representing the date or `null` if the string was not a date