Class DateConversionHandler

java.lang.Object
csv.impl.csv.type.DateConversionHandler
All Implemented Interfaces:
TypeConverter

public class DateConversionHandler extends Object implements TypeConverter
A conversion handler for dates. The default implementation can recognize these date strings: dd/MM/yyyy, dd.MM.yyyy, dd/MM/yy, dd.MM.yy, yyyy/MM/dd, yyyy.MM.dd. Please not that for a specific date string the first suitable format will be used.
Author:
ralph
  • Field Details

  • Constructor Details

    • DateConversionHandler

      public DateConversionHandler()
      Constructor.
  • Method Details

    • getTypes

      public Class<?>[] getTypes()
      Returns the types that this handler is responsible for.
      Specified by:
      getTypes in interface TypeConverter
      Returns:
      type strings
    • fromStream

      public Object fromStream(Object o)
      Converts string to date. This method tries to parse the given string by checking each possible date format. If no format applies then the original string will be returned
      Specified by:
      fromStream in interface TypeConverter
      Parameters:
      o - object from stream.
      s - string to be parsed
      Returns:
      date
      See Also:
    • toStream

      public Object toStream(Object o)
      Converts the date to its string representation.
      Specified by:
      toStream in interface TypeConverter
      Parameters:
      o - date to be converted
      Returns:
      string representation of date
      See Also:
    • getParsingFormatters

      public DateFormat[] getParsingFormatters()
      Returns the date formatters created from our date formatters.
      Returns:
      array of formatters to be used (never null!)
    • getParsingFormatters

      protected DateFormat[] getParsingFormatters(String s)
      Returns date formatters that fit the given string. This pre-selection is required due to some unexpected results when it comes to parsing (e.g. 2 digits are excepted by parsers when 4 were required).
      Parameters:
      s - the string to analyze
      Returns:
      array of formatters to be used (never null!)
    • matches

      protected boolean matches(String format, String s)
    • getParsingFormats

      public String[] getParsingFormats()
      Returns the formats that will be used. This method returns default formats when no formats were set
      Returns:
      the format strings used for parsing dates (never null!).
    • setParsingFormats

      public void setParsingFormats(String[] parsingFormats)
      Sets the parsing date formats to be used.
      Parameters:
      parsingFormats - the parsingFormats to set
    • getPrintFormat

      public String getPrintFormat()
      Returns the printing format. This method will return the first parsing format if no format was set.
      Returns:
      the printFormat
    • setPrintFormat

      public void setPrintFormat(String printFormat)
      Sets the format used for printing.
      Parameters:
      printFormat - the printFormat to set
    • getPrintFormatter

      public DateFormat getPrintFormatter()
      Returns the print formatter created from the print format.
      Returns:
      print formatter
    • setTimezone

      public void setTimezone(TimeZone timezone)
      Sets the timezone for formatting and parsing.
      Parameters:
      timezone - timezone to be used.
    • getTimezone

      public TimeZone getTimezone()
      Returns the timezone this handler uses.
      Returns:
      timezone