Ejemplo n.º 1
0
        public static AreaCodeMap ParseAreaCodeMap(Stream stream)
        {
            var areaCodeMapTemp = new SortedDictionary <int, string>();

            using (var lines = new StreamReader(stream, Encoding.UTF8))
            {
                string line;
                while ((line = lines.ReadLine()) != null)
                {
                    line = line.Trim();
                    if (line.Length <= 0 || line[0] == '#')
                    {
                        continue;
                    }
                    var indexOfPipe = line.IndexOf('|');
                    if (indexOfPipe == -1)
                    {
                        continue;
                    }
                    var areaCode = line.Substring(0, indexOfPipe);
                    var location = line.Substring(indexOfPipe + 1);
                    areaCodeMapTemp[int.Parse(areaCode)] = location;
                }
                // Build the corresponding area code map and serialize it to the binary format.
                var areaCodeMap = new AreaCodeMap();
                areaCodeMap.ReadAreaCodeMap(areaCodeMapTemp);
                return(areaCodeMap);
            }
        }