public int GetTagIntegerValue(string tagName, int defValue) { string str = GetTagStringValue(tagName); int result = ((str == "") ? defValue : SysUtils.ParseInt(str, defValue)); return(result); }
public void ConvHelper_Tests() { int ival = SysUtils.ParseInt("495", 0); Assert.AreEqual(495, ival); ival = SysUtils.ParseInt("asdfa", 11); Assert.AreEqual(11, ival); Assert.AreEqual(11.05, SysUtils.ParseFloat(null, 11.05, false)); Assert.AreEqual(11.05, SysUtils.ParseFloat("495,575", 11.05, false)); // badVal -> defVal double fval = SysUtils.ParseFloat("495.575", 0); Assert.AreEqual(495.575, fval); fval = SysUtils.ParseFloat("575,495", 0, true); Assert.AreEqual(575.495, fval); fval = SysUtils.ParseFloat("", 22.1); Assert.AreEqual(22.1, fval); fval = SysUtils.ParseFloat("sdgfdf", 22.2); Assert.AreEqual(22.2, fval); string st = SysUtils.AdjustNum(9, 3); Assert.AreEqual("009", st); }
public int GetId() { int result; try { string xref = GetXRefNum(); result = SysUtils.ParseInt(xref, 0); } catch (Exception) { result = -1; } return(result); }
/// <summary> /// This function transforms the string into a date. All components of /// the date's string must be given by numbers in order of day / month / year. /// </summary> /// <param name="strDate"></param> /// <param name="calendar"></param> /// <param name="aException"></param> /// <returns></returns> public static GEDCOMDate CreateByFormattedStr(string dateStr, GEDCOMCalendar calendar, bool aException) { if (string.IsNullOrEmpty(dateStr)) { return(null); } if (dateStr.IndexOf("-") >= 0) { dateStr = dateStr.Replace("-", "."); } if (dateStr.IndexOf("/") >= 0) { dateStr = dateStr.Replace("/", "."); } if (dateStr.IndexOf("_") >= 0) { dateStr = dateStr.Replace("_", " "); } string[] dtParts = dateStr.Split('.'); if (dtParts.Length < 3) { if (aException) { throw new GEDCOMDateException(string.Format("GEDCOMDate.CreateByFormattedStr(): date format is invalid {0}", dateStr)); } return(null); } string pd = dtParts[0].Trim(); string pm = dtParts[1].Trim(); string py = dtParts[2].Trim(); int day = (pd == "") ? 0 : SysUtils.ParseInt(pd, 0); int month = (pm == "") ? 0 : SysUtils.ParseInt(pm, 0); int year = (py == "") ? UNKNOWN_YEAR : SysUtils.ParseInt(py, UNKNOWN_YEAR); var date = new GEDCOMDate(null, null, "", ""); date.SetDate(calendar, day, month, year); return(date); }
private static object ConvertColumnStr(string val, DataType type) { switch (type) { case DataType.dtString: return(val); case DataType.dtInteger: return(SysUtils.ParseInt(val, 0)); case DataType.dtFloat: return(SysUtils.ParseFloat(val, 0.0)); case DataType.dtDateTime: return(DateTime.Parse(val)); case DataType.dtGEDCOMDate: return(GEDCOMDate.GetUDNByFormattedStr(val, GEDCOMCalendar.dcGregorian)); } return(val); }
public void PrepareArray(string title, string xAxis, string yAxis, ChartStyle style, bool excludeUnknowns, List <StatsItem> vals) { GraphPane gPane = fGraph.GraphPane; try { gPane.CurveList.Clear(); gPane.Title.Text = title; gPane.XAxis.Title.Text = xAxis; gPane.YAxis.Title.Text = yAxis; if (style != ChartStyle.ClusterBar) { PointPairList ppList = new PointPairList(); int num = vals.Count; for (int i = 0; i < num; i++) { StatsItem item = vals[i]; string s = item.Caption; double lab = (s == "?") ? 0.0f : SysUtils.ParseFloat(s, 0.0f, true); if (lab != 0.0d || !excludeUnknowns) { ppList.Add(lab, item.Value); } } ppList.Sort(); switch (style) { case ChartStyle.Bar: gPane.AddBar("-", ppList, Color.Green); break; case ChartStyle.Point: gPane.AddCurve("-", ppList, Color.Green, SymbolType.Diamond).Symbol.Size = 3; break; } } else { gPane.CurveList.Clear(); int itemscount = vals.Count; double[] yValuesF = new double[itemscount]; double[] yValuesM = new double[itemscount]; double[] xValues = new double[itemscount]; for (int i = 0; i < itemscount; i++) { StatsItem sti = vals[i]; xValues[i] = SysUtils.ParseInt(sti.Caption, 0); yValuesF[i] = sti.ValF; yValuesM[i] = sti.ValM; } gPane.AddBar("F", xValues, yValuesF, Color.Red); gPane.AddBar("M", xValues, yValuesM, Color.Blue); gPane.BarSettings.MinBarGap = 0.0f; gPane.BarSettings.MinClusterGap = 2.5f; // expand the range of the Y axis slightly to accommodate the labels //gPane.YAxis.Scale.Max += gPane.YAxis.Scale.MajorStep; // Create TextObj's to provide labels for each bar BarItem.CreateBarLabels(gPane, false, "f0"); } } finally { fGraph.AxisChange(); fGraph.Invalidate(); } }
private void DefineEncoding(StreamReader reader) { GEDCOMCharacterSet charSet = fTree.Header.CharacterSet; switch (charSet) { case GEDCOMCharacterSet.csUTF8: if (!SysUtils.IsUnicodeEncoding(reader.CurrentEncoding)) { SetEncoding(Encoding.UTF8); // file without BOM } else { fEncodingState = EncodingState.esUnchanged; } break; case GEDCOMCharacterSet.csUNICODE: if (!SysUtils.IsUnicodeEncoding(reader.CurrentEncoding)) { SetEncoding(Encoding.Unicode); // file without BOM } else { fEncodingState = EncodingState.esUnchanged; } break; case GEDCOMCharacterSet.csANSEL: SetEncoding(new AnselEncoding()); break; case GEDCOMCharacterSet.csASCII: var format = GetGEDCOMFormat(fTree); if (format == GEDCOMFormat.gf_Native) { // GEDKeeper native format (old) and ASCII charset SetEncoding(Encoding.GetEncoding(1251)); } else { var fmtProps = GEDCOMFormats[(int)format]; if (fmtProps.PredefCharset > -1) { SetEncoding(Encoding.GetEncoding(fmtProps.PredefCharset)); } else { string cpVers = fTree.Header.CharacterSetVersion; if (!string.IsNullOrEmpty(cpVers)) { int sourceCodepage = SysUtils.ParseInt(cpVers, DEF_CODEPAGE); SetEncoding(Encoding.GetEncoding(sourceCodepage)); } else { SetEncoding(Encoding.GetEncoding(DEF_CODEPAGE)); } } } break; } }