private static void Run(Options opts)
        {
            VerifyExportArgs(opts);

            using (DssReader r = new DssReader(opts.DssFile))
            {
                object      record;
                ExcelWriter ew = new ExcelWriter(opts.ExcelFile);

                for (int i = 0; i < opts.Paths.ToList <string>().Count; i++)
                {
                    string sheet;
                    while (true)
                    {
                        sheet = "dssvue_import_" + ExcelTools.RandomString(5);
                        if (!ew.SheetExists(sheet))
                        {
                            break;
                        }
                    }
                    DssPath p    = new DssPath(opts.Paths.ElementAt(i));
                    var     type = r.GetRecordType(p);
                    if (type is RecordType.RegularTimeSeries || type is RecordType.IrregularTimeSeries)
                    {
                        record = r.GetTimeSeries(p);
                        ew.Write(record as TimeSeries, sheet);
                    }
                    else if (type is RecordType.PairedData)
                    {
                        record = r.GetPairedData(p.FullPath);
                        ew.Write(record as PairedData, sheet);
                    }
                }
            }
        }
Esempio n. 2
0
 public void TestGetRecordTypeNoDPart()
 {
     using (DssReader r = new DssReader(TestUtility.BasePath + "sample7.dss"))
     {
         var recordType = r.GetRecordType(new DssPath("//SACRAMENTO/PRECIP-INC//1Day/OBS/"));
         Assert.IsTrue(recordType == RecordType.RegularTimeSeries);
     }
 }
Esempio n. 3
0
        public void InvalidRecordType()
        {
            var filename = System.IO.Path.Combine(TestUtility.BasePath, "MoRiverObs.dss");

            using (DssReader r = new DssReader(filename))
            {
                var recordType = r.GetRecordType(new DssPath("/MISSOURI RIVER/BOONVILLE, MO/FLOW/01OCT1987/15MIN/USGS/"));
                Console.WriteLine();
                Assert.IsTrue(recordType == RecordType.RegularTimeSeries);
            }
        }
Esempio n. 4
0
        public void TestGetRecordType

            ()
        {
            using (DssReader r = new DssReader(TestUtility.BasePath + "sample7.dss"))
            {
                var catalog    = r.GetCatalog(true);
                var path       = catalog.GetCondensedPath(new DssPath("//SACRAMENTO/PRECIP-INC/11Jul1877 - 30Jun2009/1Day/OBS/"));
                var recordType = r.GetRecordType(path);
                Assert.IsTrue(recordType == RecordType.RegularTimeSeries);
            }
        }
        private static void Run(Options opts)
        {
            if (opts.Command == "import")
            {
                VerifyImportArgs(opts);

                ExcelReader er = new ExcelReader(opts.ExcelFile);
                using (DssWriter w = new DssWriter(opts.DssFile))
                {
                    if (opts.Sheets.ToList <string>().Count == 0)
                    {
                        for (int i = 0; i < er.WorksheetCount; i++)
                        {
                            var t = er.CheckType(i);
                            if (t is RecordType.RegularTimeSeries || t is RecordType.IrregularTimeSeries)
                            {
                                w.Write(er.Read(i) as TimeSeries);
                            }
                            else if (t is RecordType.PairedData)
                            {
                                w.Write(er.Read(i) as PairedData);
                            }
                        }
                    }
                    else
                    {
                        foreach (var sheet in opts.Sheets)
                        {
                            var t = er.CheckType(sheet);
                            if (t is RecordType.RegularTimeSeries || t is RecordType.IrregularTimeSeries)
                            {
                                w.Write(er.Read(sheet) as TimeSeries);
                            }
                            else if (t is RecordType.PairedData)
                            {
                                w.Write(er.Read(sheet) as PairedData);
                            }
                        }
                    }
                }
            }
            else if (opts.Command == "export")
            {
                VerifyExportArgs(opts);

                using (DssReader r = new DssReader(opts.DssFile))
                {
                    object      record;
                    ExcelWriter ew = new ExcelWriter(opts.ExcelFile);
                    if (opts.Sheets.ToList().Count == 0)
                    {
                        for (int i = 0; i < opts.Paths.ToList <string>().Count; i++)
                        {
                            string  sheet = "dssvue_import_" + ExcelTools.RandomString(5);
                            DssPath p     = new DssPath(opts.Paths.ElementAt(i));
                            var     type  = r.GetRecordType(p);
                            if (type is RecordType.RegularTimeSeries || type is RecordType.IrregularTimeSeries)
                            {
                                record = r.GetTimeSeries(p);
                                ew.Write(record as TimeSeries, sheet);
                            }
                            else if (type is RecordType.PairedData)
                            {
                                record = r.GetPairedData(p.FullPath);
                                ew.Write(record as PairedData, sheet);
                            }
                        }
                    }
                    else
                    {
                        for (int i = 0; i < opts.Sheets.ToList().Count; i++)
                        {
                            DssPath p    = new DssPath(opts.Paths.ElementAt(i));
                            var     type = r.GetRecordType(p);
                            if (type is RecordType.RegularTimeSeries || type is RecordType.IrregularTimeSeries)
                            {
                                record = r.GetTimeSeries(p);
                                ew.Write(record as TimeSeries, opts.Sheets.ElementAt(i));
                            }
                            else if (type is RecordType.PairedData)
                            {
                                record = r.GetPairedData(p.FullPath);
                                ew.Write(record as PairedData, opts.Sheets.ElementAt(i));
                            }
                        }
                    }
                }
            }
        }