public static void GetMobileLocation(Worksheet sheet) { Dictionary <string, string> mobileLocationDict = new Dictionary <string, string>(); int rowIndex = 1; while (sheet.Cells[rowIndex, 2].Value != null) { string mobileNumber = sheet.Cells[rowIndex, 10].StringValue.Trim(); if (!string.IsNullOrEmpty(mobileNumber)) { string location = string.Empty; if (mobileLocationDict.Keys.Contains(mobileNumber)) { location = mobileLocationDict[mobileNumber]; } else { location = IPLocationUtil.GetMobileNumberInfo(mobileNumber).data.ToString(); mobileLocationDict.Add(mobileNumber, location); } sheet.Cells[rowIndex, 11].PutValue(location); } rowIndex++; } }
public static List <string> GetIpLocationList(List <string> ipAddresses) { List <string> locationList = new List <string>(); int index = 0; foreach (var address in ipAddresses) { if (!string.IsNullOrEmpty(address)) { string result = IPLocationUtil.GetIPLocation(address); locationList.Add(result); } else { locationList.Add(string.Empty); } index++; if (index % 500 == 0) { Console.WriteLine(index); } Thread.Sleep(30); } return(locationList); }
public static void GetIpLocationList(Workbook workbook, string filePath) { Worksheet sheet = workbook.Worksheets[0]; List <string> locationList = new List <string>(); Dictionary <string, string> dict = new Dictionary <string, string>(); int rowIndex = 1; while (sheet.Cells[rowIndex, 2].Value != null) { string ipaddress = sheet.Cells[rowIndex, 1].StringValue; if (string.IsNullOrEmpty(sheet.Cells[rowIndex, 0].StringValue.Trim())) { string result = string.Empty; if (dict.ContainsKey(ipaddress)) { result = dict[ipaddress]; } else { result = IPLocationUtil.GetIPLocation(ipaddress); dict.Add(ipaddress, result); } sheet.Cells[rowIndex, 0].PutValue(result); if (rowIndex % 10 == 0) { workbook.Save(filePath); } Console.WriteLine(rowIndex); Thread.Sleep(50); } rowIndex++; } workbook.Save(filePath); }