//-------------------------------------------------------------------// private static object ExcelDateArray2QTimespan(Array a) { var dim1 = a.GetLength(0); if (a.Rank == 1) { var res = new QTimespan[dim1]; for (var i = 0; i < dim1; i++) { res[i] = (QTimespan)ExcelDate2QTimespan(a.GetValue(i)); } return(res); } var dim2 = a.GetLength(1); var r = new object[dim2]; //two dimensional array for (var i = 0; i < dim2; i++) { var elem = new QTimespan[dim1]; for (var j = 0; j < dim1; j++) { elem[j] = (QTimespan)ExcelDate2QTimespan(a.GetValue(j, i)); } r[i] = elem; } return(r); }
public void testQTimespanFromString() { Assert.AreEqual(new QTimespan(0L), QTimespan.FromString("0D00:00:00.000000000")); Assert.AreEqual(new QTimespan(48613000000000L), QTimespan.FromString("0D13:30:13.000000000")); Assert.AreEqual(new QTimespan(48613000000100L), QTimespan.FromString("0D13:30:13.000000100")); Assert.AreEqual(new QTimespan(-48613000000000L), QTimespan.FromString("-0D13:30:13.000000000")); Assert.AreEqual(new QTimespan(-48613000010000L), QTimespan.FromString("-0D13:30:13.000010000")); Assert.AreEqual(new QTimespan(135013000000000L), QTimespan.FromString("1D13:30:13.000000000")); Assert.AreEqual(new QTimespan(86399000000000L), QTimespan.FromString("0D23:59:59.000000000")); Assert.AreEqual(new QTimespan(259199000000000L), QTimespan.FromString("2D23:59:59.000000000")); Assert.AreEqual(new QTimespan(-259199000000000L), QTimespan.FromString("-2D23:59:59.000000000")); Assert.AreEqual(new QTimespan(long.MinValue), QTimespan.FromString(null)); Assert.AreEqual(new QTimespan(long.MinValue), QTimespan.FromString("")); Assert.AreEqual(new QTimespan(long.MinValue), QTimespan.FromString("0Nn")); }