public List <BicycleInfo> GetBikesByPage(int page) { HttpWebRequest request = WebRequest.Create(this._bikeUrl) as HttpWebRequest; request.Method = "GET"; request.KeepAlive = false; string srcString = this._grasp.GetPageInfo(this._bikeUrl, page); srcString = srcString.Replace(" ", " "); //提取ZXCClick string bicyclePattern = @"(?<=javascript:window.parent.ZXCClick\()[^(\);)]*"; MatchCollection mc = Regex.Matches(srcString, bicyclePattern); int bNum = mc.Count; //查询出来的自行车个数 List <BicycleInfo> _biList = new List <BicycleInfo>(); //自行车具体信息 for (int i = 0; i < mc.Count; i++) { string v = mc[i].Value; v = v.Replace("'", ""); v = HttpUtility.UrlDecode(v); string[] b = v.Split(new Char[] { ',' }); BicycleInfo _bi = new BicycleInfo(); _bi.ServiceState = b[0]; //服务状态 _bi.StationName = b[2]; //自行车站点名称 _bi.StationAddr = b[3]; //自行车站点位置 _bi.ServiceTime = b[4]; //服务时间 _bi.ServicePhone = b[5]; //服务电话 if (b[7] != "*") //可借车辆 { _bi.BorrowNum = int.Parse(b[7]); } if (b[8] != "*") //可还车辆 { _bi.ReturnNum = int.Parse(b[8]); } _bi.X = double.Parse(b[9]); //自行车站点X坐标 _bi.Y = double.Parse(b[10]); //自行车站点Y坐标 _biList.Add(_bi); } return(_biList); }
private void FillExcelRecord(Microsoft.Office.Interop.Excel.Application excel, List <BicycleInfo> bikes, int startRow) { //填充数据 for (int i = 0; i < bikes.Count; i++) { int row = startRow + i + 2; BicycleInfo bike = bikes[i]; excel.Cells[row, 1] = bike.StationName; excel.Cells[row, 2] = bike.StationID; excel.Cells[row, 3] = bike.BorrowNum; excel.Cells[row, 4] = bike.ReturnNum; excel.Cells[row, 5] = bike.ServiceTime; excel.Cells[row, 6] = bike.ServiceState; excel.Cells[row, 7] = bike.StationAddr; excel.Cells[row, 8] = bike.X; excel.Cells[row, 9] = bike.Y; excel.Cells[row, 10] = bike.ServicePhone; excel.Cells[row, 11] = bike.StationRemarks; } }