/// <summary>
        /// 返回LightningStrike_China类型,处理出错则返回null
        /// </summary>
        /// <param name="strLineArray"></param>
        /// <returns></returns>
        public override LightningStrikeChina ProcessStrikeLineReturnStrikeFormat()
        {
            string[] strLineArray = base.StrLineArray;
            try
            {
                int    year   = Convert.ToInt32(strLineArray[1].Substring(0, 4));
                int    month  = Convert.ToInt32(strLineArray[2].Substring(0, 2));
                int    day    = Convert.ToInt32(strLineArray[3].Substring(0, 2));
                int    hour   = Convert.ToInt32(strLineArray[4].Substring(0, 2));
                int    minute = Convert.ToInt32(strLineArray[5].Substring(0, 2));
                int    second = Convert.ToInt32(strLineArray[6].Substring(0, 2));
                int    milisecond;
                string miliSecondString = strLineArray[7].Substring(0, 3);
                milisecond = Convert.ToInt32(miliSecondString);
                DateTime dt           = new DateTime(year, month, day, hour, minute, second, milisecond);
                double   intensity    = Convert.ToDouble(strLineArray[10]);
                double   slope        = Convert.ToDouble(strLineArray[11]);
                double   error        = Convert.ToDouble(strLineArray[12]);
                double   latitude     = Convert.ToDouble(strLineArray[8]);
                double   longitude    = Convert.ToDouble(strLineArray[9]);
                string   locationmode = strLineArray[8].Substring(5);
                string   province     = base.Province;
                string   city         = "";
                string   district     = "";

                LightningStrikeChina newLightningStrike_China = ReturnStrike(dt, intensity, slope, error, longitude, latitude, locationmode, province, city, district);
                return(newLightningStrike_China);
            }
            catch
            {
                throw;
            }
        }
        public static LightningStrikeChina GetStrikeFromRowArray(string[] strArray)
        {
            LightningStrikeChina  strike = new LightningStrikeChina();
            LlsRowProcessorFormat Lrpf;

            try
            {
                Lrpf = new LlsRowProcessorFormat1(strArray);
                return(Lrpf.ProcessStrikeLineReturnStrikeFormat());
            }
            catch
            {
                try
                {
                    Lrpf = new LlsRowProcessorFormat2(strArray);
                    return(Lrpf.ProcessStrikeLineReturnStrikeFormat());
                }
                catch
                {
                    try
                    {
                        Lrpf = new LlsRowProcessorFormat3(strArray);
                        return(Lrpf.ProcessStrikeLineReturnStrikeFormat());
                    }
                    catch
                    {
                        throw;
                    }
                }
            }
        }
 public LightningStrikeChina ReturnStrike()
 {
     try
     {
         LightningStrikeChina strike = new LightningStrikeChina();
         //读content并获取strike
         string[] strArray = ProcessStrikeRecordTextToArray();
         strike = LlsRowFormatFactory.GetStrikeFromRowArray(strArray);
         LlsRowFormatFactory.srcFileName = srcFileName;
         return(strike);
     }
     catch
     { return(null); }
 }
        /// <summary>
        /// 获取必备信息,返回LightningStrike_China实例
        /// </summary>
        /// <returns></returns>
        protected LightningStrikeChina ReturnStrike(DateTime dt, double intensity, double slope, double error, double longitude, double latitude, string locationMode, string province, string city, string district)
        {
            LightningStrikeChina newStrike = new LightningStrikeChina();

            newStrike.DateAndTime  = dt;
            newStrike.Intensity    = intensity;
            newStrike.Slope        = slope;
            newStrike.Error        = error;
            newStrike.Longitude    = longitude;
            newStrike.Latitude     = latitude;
            newStrike.LocationMode = locationMode;
            newStrike.Province     = province;
            newStrike.City         = city;
            newStrike.District     = district;
            return(newStrike);
        }
        public BaseStrikeChina ConvertStandardStrikToChina(BaseStrikeStandard strike)
        {
            var res = new LightningStrikeChina()
            {
                ID            = strike.ID,
                DateAndTime   = strike.DateAndTime,
                Longitude     = strike.Longitude,
                Latitude      = strike.Latitude,
                Intensity     = strike.Intensity,
                Slope         = strike.Slope,
                Error         = strike.Error,
                LocationMode  = strike.LocationMode,
                LightningType = strike.LightningType
            };

            return(res);
        }