public XslNumberFormatter(string format, string lang, string letterValue, char groupingSeparator, int groupingSize) { // We dont do any i18n now, so we ignore lang and letterValue. if (format == null || format == "") { fmtList.Add(FormatItem.GetItem(null, "1", groupingSeparator, groupingSize)); } else { NumberFormatterScanner s = new NumberFormatterScanner(format); string itm; string sep = "."; firstSep = s.Advance(false); itm = s.Advance(true); if (itm == null) // Only separator is specified { sep = firstSep; firstSep = null; fmtList.Add(FormatItem.GetItem(sep, "1", groupingSeparator, groupingSize)); } else { // The first format item. fmtList.Add(FormatItem.GetItem(".", itm, groupingSeparator, groupingSize)); do { sep = s.Advance(false); itm = s.Advance(true); if (itm == null) { lastSep = sep; break; } fmtList.Add(FormatItem.GetItem(sep, itm, groupingSeparator, groupingSize)); }while (itm != null); } } }
public XslNumberFormatter (string format, string lang, string letterValue, char groupingSeparator, int groupingSize) { // We dont do any i18n now, so we ignore lang and letterValue. if (format == null || format == "") fmtList.Add (FormatItem.GetItem (null, "1", groupingSeparator, groupingSize)); else { NumberFormatterScanner s = new NumberFormatterScanner (format); string itm; string sep = "."; firstSep = s.Advance (false); itm = s.Advance (true); if (itm == null) { // Only separator is specified sep = firstSep; firstSep = null; fmtList.Add (FormatItem.GetItem (sep, "1", groupingSeparator, groupingSize)); } else { // The first format item. fmtList.Add (FormatItem.GetItem (".", itm, groupingSeparator, groupingSize)); do { sep = s.Advance (false); itm = s.Advance (true); if (itm == null) { lastSep = sep; break; } fmtList.Add (FormatItem.GetItem (sep, itm, groupingSeparator, groupingSize)); } while (itm != null); } } }