1.创建execl(不需要服务器或者客户端安装office)
public void DCExexl(DataTable dt)
{
Workbook wb = new Workbook();
Worksheet ws = wb.Worksheets[0];
Cells cell = ws.Cells;
cell[0, 0].PutValue("ID");//添加数据到第0行和第0列
cell.SetRowHeight(0, 0);设置行高
Aspose.Cells.Style style1 = wb.Styles[wb.Styles.Add()];
style1.HorizontalAlignment = TextAlignmentType.Right;//文字居中
style1.Font.Name = "宋体";
style1.Font.IsBold = true;//设置粗体
style1.Font.Size = 12;//设置字体大小
cell[0, 0].SetStyle(style1);
cell.SetColumnWidth(0, 10.00);//列宽
Range range = cell.CreateRange(0, 0, 1, 1);//合并单元格
range.Merge();
string FileName = DateTime.Now.ToString("yyyyMMddHHmmss") + ".xls";
HttpResponse response = Page.Response;
response.Buffer = true;
response.Charset = "utf-8";
response.AppendHeader("Content-Disposition", "attachment;filename=" + FileName);
response.ContentEncoding = System.Text.Encoding.UTF8;
response.ContentType = "application/ms-excel";
response.BinaryWrite(wb.SaveToStream().ToArray());
response.End();
}
2.读取execl
public DataTable GetDataTable(string path)
{
Workbook workbook = new Workbook();
workbook.Open(path);
Cells cells = workbook.Worksheets[0].Cells;
DataTable dt = new DataTable();
bool d = true;//防止表头重复加载
for (int i = 0; i < cells.MaxDataRow + 1; i++)
{
DataRow row = dt.NewRow();
for (int j = 0; j < cells.MaxDataColumn + 1; j++)
{
if (d) {
dt.Columns.Add(cells[0, j].StringValue.Trim());
}
row[j] = cells[i + 1, j].StringValue.Trim();
}
dt.Rows.Add(row);
d = false;
}
return dt;
}