添加引用
http://htmlagilitypack.codeplex.com/downloads/get/437941
protected void Export(string content,string file)
{
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(content);
HtmlNode table = doc.DocumentNode.SelectSingleNode("//table");
DataTable dttable = new DataTable();
HtmlNode row = table.SelectSingleNode("//tr[@class=\"title\"]");
string name = string.Empty;
foreach (HtmlNode cell in row.SelectNodes("th|td"))
{
name = cell.InnerText.Replace("\r\n", "").Trim();
dttable.Columns.Add(name); // create columns from th
}
foreach (var rows in doc.DocumentNode.SelectNodes("//tr[td]"))
{
dttable.Rows.Add(rows.SelectNodes("td").Select(td => td.InnerText.Replace("\r\n", "").Trim()).ToArray());
}
//return dttable;
dttable.Rows.RemoveAt(0);
if (dttable.Columns.Contains("操作"))
dttable.Columns.Remove("操作");
GemBox.ExcelLite.ExcelFile ef = SaveData.DataTableToExcel(dttable);
Response.ContentType = "application/vnd.ms-excel";
Response.AddHeader("Content-Disposition", "attachment; filename=" + file);
//string path = AppDomain.CurrentDomain.BaseDirectory + "xls_view\\" + file;
string path = string.Format("{0}xls_report\\{1}\\{2}", AppDomain.CurrentDomain.BaseDirectory, GetAdmin.cid, GetAdmin.account);
if (!System.IO.Directory.Exists(path))
{
System.IO.Directory.CreateDirectory(path);
}
path = System.IO.Path.Combine(path, file);
ef.SaveXls(path);
byte[] data = null; ;
using (System.IO.Stream str = new System.IO.FileStream(path, System.IO.FileMode.Open))
{
data = new byte[str.Length];
str.Read(data, 0, data.Length);
}
this.Response.OutputStream.Write(data, 0, data.Length);
}