public void Init(string uri)
 {
     lock (_lock)
     {
         if (_source == null)
         {
             var reader = new XlsFileReader(uri);
             _source = reader.ReadFile();
         }
     }
 }
示例#2
0
        /// <summary>
        /// Получение всех информационных строк
        /// </summary>
        private void GetInfoRows()
        {
            XlsFileReader.Read();

            string row = XlsFileReader.GetString(0);

            while (row.StartsWith("#") && XlsFileReader.Read())
            {
                InfoRows.Add(row);
                row = XlsFileReader.GetString(0);
            }
        }
示例#3
0
        /// <summary>
        /// Получение всех дат и типов ветров
        /// </summary>
        private void GetAllDateTimesAndAllWindTypes()
        {
            while (XlsFileReader.Read())
            {
                //Невозможно использовать метод "GetDateTime()", так как вместо "DateTime.Parse(...)"
                //данный метод использует приведение (DateTime)GetValue(...), и тут возникает исключение
                string   stringDate     = XlsFileReader.GetString(_dateTimeColumnIndex);
                DateTime dateTimeColumn = DateTime.Parse(stringDate);
                string   ddColumn       = XlsFileReader.GetString(_ddColumnIndex);

                AllDateTimes.Add(dateTimeColumn);
                AllWindTypes.Add(ddColumn);
            }
        }
示例#4
0
 /// <summary>
 /// Поиск нужных столбцов
 /// </summary>
 private void FindColumns()
 {
     try
     {
         for (int i = 0; ; i++)
         {
             string row = XlsFileReader.GetString(i);
             if (row.Contains("Местное время"))
             {
                 _dateTimeColumnIndex = i;
             }
             else if (row.Contains("DD"))
             {
                 _ddColumnIndex = i;
                 break;
             }
         }
     }
     catch
     {
     }
 }
        /// <summary>
        /// Loads cached places from local storage
        /// </summary>
        public void Init(string uri)
        {
            lock (_cache)
            {
                if (_cached)
                {
                    return;
                }

                _uri = uri;
                var reader = new XlsFileReader(uri);
                var file   = reader.ReadFile();

                var sheet = new CartoPlaceSheetData(file.Sheets[0]);
                foreach (var row in sheet.Rows)
                {
                    var info = new CartoPlaceInfo(row);
                    _cache.Add(info);
                }

                _cached = true;
                _dirty  = false;
            }
        }