Пример #1
0
  /**
   * Crea un formateador de números a partir de una información de formateo de un campo
   *
   * @param fldFmtInfo información de formateo de un campo
   * @return referencia a un objeto de tipo ArchiveNumFmt que es un formateador de fechas
   * @throws Exception
   * @see ArchiveNumFmt
   */
  public static ArchiveNumFmt createNumFmt(String fldFmtInfo) throws Exception {
    ArchiveNumFmt numFmt = null;
    char sep = ',';
    int fmtType, numType;
    String decimalSep, thousandSep;
    int numDecDigits;
    StringCharacterIterator iterator = new StringCharacterIterator(fldFmtInfo);

    fmtType = UtilX.parseInteger(iterator, sep);

    if (fmtType != ArchiveBaseDefs.FLD_FMT_TYPE_NUM) {
      throw new IeciTdException(
          ArchiveBaseError.EC_INVALID_PARAM, ArchiveBaseError.EM_INVALID_PARAM);
    }

    UtilX.iteratorIncrementIndex(iterator, 1);

    numType = UtilX.parseInteger(iterator, sep);
    UtilX.iteratorIncrementIndex(iterator, 1);

    thousandSep = UtilX.parseString(iterator);
    UtilX.iteratorIncrementIndex(iterator, 1);

    decimalSep = UtilX.parseString(iterator);
    UtilX.iteratorIncrementIndex(iterator, 1);

    numDecDigits = UtilX.parseInteger(iterator, sep);

    numFmt = new ArchiveNumFmt(thousandSep, decimalSep, numDecDigits);

    return numFmt;
  }
Пример #2
0
  /**
   * Crea un formateador de fechas a partir de una información de formateo de un campo
   *
   * @param fldFmtInfo información de formateo de un campo
   * @return referencia a un objeto de tipo ArchiveDTFmt que es un formateador de fechas
   * @throws Exception
   * @see ArchiveDTFmt
   */
  public static ArchiveDTFmt createDTFmt(String fldFmtInfo) throws Exception {
    ArchiveDTFmt dtFmt = null;
    char sep = ',';
    int fmtType, dtType;
    String dateSep, timeSep, dateTimeSep;
    int dateFmt, timeFmt;
    StringCharacterIterator iterator = new StringCharacterIterator(fldFmtInfo);

    fmtType = UtilX.parseInteger(iterator, sep);

    if (fmtType != ArchiveBaseDefs.FLD_FMT_TYPE_DT) {
      throw new IeciTdException(
          ArchiveBaseError.EC_INVALID_PARAM, ArchiveBaseError.EM_INVALID_PARAM);
    }

    UtilX.iteratorIncrementIndex(iterator, 1);

    dtType = UtilX.parseInteger(iterator, sep);
    UtilX.iteratorIncrementIndex(iterator, 1);

    dateSep = UtilX.parseString(iterator);
    UtilX.iteratorIncrementIndex(iterator, 1);

    timeSep = UtilX.parseString(iterator);
    UtilX.iteratorIncrementIndex(iterator, 1);

    dateTimeSep = UtilX.parseString(iterator);
    UtilX.iteratorIncrementIndex(iterator, 1);

    dateFmt = UtilX.parseInteger(iterator, sep);
    UtilX.iteratorIncrementIndex(iterator, 1);

    timeFmt = UtilX.parseInteger(iterator, sep);

    dtFmt = new ArchiveDTFmt(dateSep, timeSep, dateTimeSep, dateFmt, timeFmt);

    return dtFmt;
  }